আমার কি টাইপস্ক্রিপ্ট ব্যবহার করা উচিত? অথবা আমি কেবল ES6 ব্যবহার করতে পারি? [বন্ধ]


286

আমার প্রতিদিনের কাজটি AngularJS ব্যবহার করে ক্লায়েন্ট বিকাশকারী। আমরা টাইপস্ক্রিপ্ট নিয়ে যেতে চাইলে মূল্যায়ন করছি। আমি টাইপস্রিপ্ট নিয়ে কিছু গবেষণা করেছি এবং প্রায় প্রতিটি জাভাস্ক্রিপ্ট প্যাকেজটিতে আমার অবশ্যই সংজ্ঞা টাইপ ফাইল থাকতে হবে। আমি দেখতে পেলাম যে খুব সুবিধাজনক নয়, বিশেষত যদি আমি নতুন কিছু চেষ্টা করতে চাই এবং তাদের কাছে এর সংজ্ঞা না থাকে। এটা সত্যিই হতাশাবোধ। (এমনকি বর্তমান jQuery সংজ্ঞা আমাকে টাইপস্ক্রিপ্ট 1.5 বিটা ব্যবহার করতে চাইলে কিছু সমস্যা দেয়)। আমি ES6 এর দিকে তাকাতে শুরু করেছি এবং এটি টাইপস্ক্রিপ্টের অনুরূপ। পরিবর্তে আমি কি কেবল ES6 ব্যবহার করব? এছাড়াও, আমি শুনেছি কৌণিক 2 টি টাইপস্ক্রিপ্টের পুরো সমর্থন পাবে, এটির কি কারণেই আমার সাথে থাকতে হবে?


11
নতুন কোনও কিছুর জন্য আপনাকে প্রতিবার সংজ্ঞা ফাইলের দরকার নেই। আপনি যদি টাইপ না করে কোনও লাইব্রেরি ব্যবহার করতে চান declare var MyNewLibraryName: any;তবে লেখক অভিযোগ না করে আপনি দয়া করে এটি ব্যবহার করুন।
ডেভিড শেরেট

2
এই প্রশ্নটি বন্ধ করার জন্য ভোটের সাহায্যে, আমি প্রতিটি পদ্ধতির সাথে যুক্ত আরও ভাল / কনসকে জিজ্ঞাসা করার চেয়ে পরামর্শ দেব যেটি সবচেয়ে ভাল, এইভাবে আপনি তথ্যের জন্য জিজ্ঞাসা করছেন, মতামতের জন্য নয়।
ব্রোকো

সমস্ত বড় ব্রাউজারের আগে টাইপসক্রিপ্ট আপডেট জাভাস্ক্রিপ্ট নতুন সংস্করণ বৈশিষ্ট্য, আমার বিকল্পটি টাইপস্ক্রিপ্ট ব্যবহার করা এবং আপনার টার্গেট ব্রাউজারগুলির উপর ভিত্তি করে জাভাস্ক্রিপ্ট সংস্করণে সংকলন করা। (অবশ্যই জাভাস্ক্রিপ্টের একটি সংস্করণ অন্য সংস্করণে
স্থানান্তর করা

আপনি যদি আপনার কোডটি সঠিকভাবে লিঙ্ক করতে সক্ষম হচ্ছেন না, এবং আপনি চান যে ইমটুটেবল.জেগুলি আপনার সাথে কাজ করা সত্যিই কঠোর হতে পারে, এবং আপনি বয়লারপ্লেট লিখতে পছন্দ করেন এবং আপনি মনে করেন ডিআরওয়াই ওভাররেটেড হয়েছে এবং আপনি নিজেকে পুনরাবৃত্তি করতে পছন্দ করেন এবং আপনি অন্য ব্যক্তির কোডের জন্য টাইপ সংজ্ঞা লেখার উপভোগ করুন এবং প্রকারগুলি পরিচালনা করতে পছন্দ করুন যেমন তারা আপনার নীচে পরিবর্তিত হয় এবং আপনি দুটি পৃথক পাঠ্য সম্পাদকের মধ্যে স্যুইচিং উপভোগ করতে পারেন কারণ সেখানে কিছুই সঠিকভাবে কাজ করে না, তারপরে টাইপস্ক্রিপ্ট চয়ন করুন। তবে আপনি যদি বুদ্ধিমান হন তবে ES6 / 7 এবং বাবেল চয়ন করুন।
গারগান্টুয়ান

উত্তর:


114

আমি আমার বর্তমান কৌণিক প্রকল্পে টাইপস্ক্রিপ্টটি প্রায় দেড় বছর ধরে ব্যবহার করছি এবং এখন যখন সংজ্ঞা রয়েছে তখন কয়েকটি সমস্যা রয়েছে এবং তারপরে DefinitelyType প্রকল্পটি সর্বাধিক জনপ্রিয় লাইব্রেরির সর্বশেষ সংস্করণগুলি ধরে রাখার জন্য একটি আশ্চর্যজনক কাজ করে।

ভ্যানিলা জাভাস্ক্রিপ্ট থেকে টিএসে স্থানান্তরিত করার সময় একটি নির্দিষ্ট শিক্ষার বক্ররেখা রয়েছে এবং এটি আপনার এবং আপনার দলের সেই রূপান্তরটি করার ক্ষমতা বিবেচনা করা উচিত Having এছাড়াও আপনি যদি কৌনিক 1.x ব্যবহার করতে যাচ্ছেন তবে অনলাইনে আপনি যে উদাহরণগুলি খুঁজে পেতে পারেন তার বেশিরভাগ আপনাকে জেএস থেকে টিএস এ অনুবাদ করতে হবে এবং সামগ্রিকভাবে এখনই টিএস এবং কৌণিক 1.x একসাথে ব্যবহার করার জন্য প্রচুর সংস্থান নেই now ।

আপনি যদি কৌণিক 2 ব্যবহারের পরিকল্পনা করে থাকেন তবে টিএস ব্যবহারের অনেকগুলি উদাহরণ রয়েছে এবং আমি মনে করি টিম টিএস-তে বেশিরভাগ ডকুমেন্টেশন সরবরাহ করবে, তবে আপনাকে অবশ্যই কৌনিক 2 ব্যবহার করতে টিএস ব্যবহার করতে হবে না।

ES6 এর কয়েকটি দুর্দান্ত বৈশিষ্ট্য রয়েছে এবং আমি এটির সাথে আরও পরিচিত হওয়ার জন্য ব্যক্তিগতভাবে পরিকল্পনা করি তবে আমি এ মুহুর্তে এটি একটি উত্পাদন-প্রস্তুত ভাষা হিসাবে বিবেচনা করব না। মূলত বর্তমান ব্রাউজারগুলির সাহায্যের অভাবের কারণে। অবশ্যই, আপনি নিজের কোডটি ES6 এ লিখতে পারেন এবং ES5 এ পাওয়ার জন্য একটি ট্রান্সপ্লার ব্যবহার করতে পারেন, যা এখনই করা জনপ্রিয় জিনিস বলে মনে হয়।

সামগ্রিকভাবে আমি মনে করি যে উত্তরটি আপনার এবং আপনার দলটি শিখতে স্বাচ্ছন্দ্যের সাথে নেমে আসবে। আমি ব্যক্তিগতভাবে মনে করি টিএস এবং ইএস both উভয়েরই ভাল সমর্থন এবং দীর্ঘ ফিউচার থাকবে, আমি টিএসকে বেশি পছন্দ করি কারণ আপনি ভাষা বৈশিষ্ট্যগুলি দ্রুত এবং এখনই পেয়ে যাচ্ছেন তবে সরঞ্জাম সরঞ্জামটি (আমার মতে) কিছুটা ভাল।


40
ES6 কোনও ব্রাউজার সমর্থন পেয়েছে ?? আপনি কিছু এমএস রাজনীতিবিদ? টাইপ স্ক্রিপ্ট এবং ইএস 6 উভয়েরই ট্রান্সপ্লেলার দরকার। এর অর্থ আপনি বাবেলের মতো কিছু ব্যবহার করে ওয়েবে টিএস বা ইএস 6 চালাচ্ছেন না। কৌনিক 2 তে টিএস কেবলমাত্র একটি রাজনৈতিক টাই বিটিডব্লু গুগল এবং এমএসের জন্য যুক্ত করা হয়েছিল
স্টিল

40
@ স্টিল কোনও এমএস রাজনীতিবিদ নন, আপনি যখন এক বছর আগে ইএস support সমর্থনটি খুব সীমাবদ্ধ রেখেছিলেন তখন আমি যে উত্তরটি ফেলেছিলাম কেবল সেটির প্রতিক্রিয়া জানাচ্ছি। এবং আপনি টিএস এবং কৌণিক 2 সিদ্ধান্তটি রাজনৈতিক মনে করতে নির্দ্বিধায় ছিলেন তবে এটি আমার বক্তব্যকে পরিবর্তন করে না যে এটি সেই ভাষার জন্য লেখা হয়েছিল এবং অ্যাঙ্গুলার 2 টিম এর ব্যবহারকে উত্সাহিত করছে।
কেন্ট কুপার

18
এটি 2 বছর আগে থেকে, তবে সময়টি দেখিয়েছে যে কীভাবে মান শেষ পর্যন্ত বিরাজ করে। ইএস 6 আজকাল বেশিরভাগ ব্রাউজার দ্বারা স্থানীয়ভাবে সমর্থনযোগ্য। ক্লাস, তীর ফাংশন ইত্যাদি শেষ পর্যন্ত, আমরা এমন একটি জায়গায় পৌঁছে যাব যেখানে ব্রাউজারগুলি ট্রান্সপ্লারদের অপ্রয়োজনীয় করার জন্য জাভাস্ক্রিপ্টের একটি পর্যাপ্ত শালীন সংস্করণ সমর্থন করবে। টাইপস্ক্রিপ্ট সর্বদা একটি ট্রান্সফেলার প্রয়োজন। এটা জরুরী কেন? কারণ ওয়েব বিকাশকারী হিসাবে
ওয়েবকে

3
এটি একটি বামার ES6 প্রকৃত "সংকলন সময়" ধরণের সুরক্ষা সমর্থন করে না। ES6 তে প্রচুর দুর্দান্ত জিনিস রয়েছে তবে আমি এই যুক্তিটি স্ট্রিং (বা দশম শ্রেণীর উদাহরণ), ড্যামিট "বলতে পারি না এবং এটি আপনার বিল্ড প্রক্রিয়াটির অংশ হিসাবে যাচাই করতে সক্ষম হতে এখনও খারাপ বড় প্রোগ্রাম (সামনের দিকে এবং পিছনের প্রান্তে সমানভাবে)
ব্র্যাড পিয়াবডি

আপনি যদি সত্যিই চান তবে ES6- এ টাইপ সমর্থন যুক্ত করতে আপনি ফ্লো টাইপের মতো একটি সরঞ্জাম ব্যবহার করতে পারেন। যতক্ষণ না ES6 সমস্ত ব্রাউজারে সর্বব্যাপী হয়ে যায়, ততক্ষণ আপনার টুলচেনটি প্রবাহ-> ES6-> বাবেল সমন্বিত থাকবে যা অনেকটা দিকনির্দেশনা, তবে কাজটি করে এবং আমি মনে করি বর্তমানে একটি খুব জনপ্রিয় চেইন।
প্রহ্লাদ ইয়েরি

660

ES5, ES6 এবং টাইপস্ক্রিপ্টের মধ্যে সিদ্ধান্ত গাছ

আপনি একটি বিল্ড পদক্ষেপ আছে আপত্তি?

  • হ্যাঁ - ইএস 5 ব্যবহার করুন
  • না - চলতে থাকুন

আপনি কি টাইপ ব্যবহার করতে চান?

  • হ্যাঁ - টাইপস্ক্রিপ্ট ব্যবহার করুন
  • না - ES6 ব্যবহার করুন

আরো বিস্তারিত

ES5 হ'ল সেই জাভাস্ক্রিপ্ট যা আপনি জানেন এবং আজ ব্রাউজারে ব্যবহার করেন এটি যা এটি এবং এটি কোনও কিছুতে রূপান্তর করার জন্য একটি বিল্ড পদক্ষেপের প্রয়োজন নেই যা আজকের ব্রাউজারগুলিতে চলবে will

ES6 (এটি ES2015 নামে পরিচিত ) হ'ল জাভাস্ক্রিপ্টের পরবর্তী পুনরাবৃত্তি, তবে এটি আজকের ব্রাউজারগুলিতে চালিত হয় না। বেশ কয়েকটি ট্রান্সপনার রয়েছে যা ব্রাউজারগুলিতে চলার জন্য ES5 রফতানি করবে। এটি এখনও একটি গতিশীল (পড়ুন: টাইপ না করা) ভাষা।

টাইপরাইটারে মুদ্রি যখন জাভাস্ক্রিপ্ট (ES6 এবং ES7) ভবিষ্যত সংস্করণ থেকে বৈশিষ্ট্যগুলিতে কাছে একটি ঐচ্ছিক টাইপিং ব্যবস্থা প্রদান করে।

দ্রষ্টব্য: সেখানে প্রচুর পরিবাহক (যেমন বাবেল, টাইপস্ক্রিপ্ট) আপনাকে জাভাস্ক্রিপ্টের ভবিষ্যতের সংস্করণ এবং রফতানির কোডগুলি আজও ব্রাউজারগুলিতে চলবে এমন বৈশিষ্ট্যগুলি ব্যবহার করতে দেয়।


5
এটা অত সস্তা না. অন্যান্য অনেক কারণ রয়েছে।
রাউলরবিন

16
@ রৌলরবিন এটি সত্য, অন্যান্য অনেকগুলি কারণ রয়েছে তবে এখানে একটি বন্ধ প্রশ্নের জন্য এটি কমপক্ষে সিদ্ধান্ত নেওয়ার প্রক্রিয়াটির সূচনা করার ক্ষেত্র সরবরাহ করে
ব্রোকো

1
PS - ES6 + ফ্লো টাইপ = প্রেম :)
Red2678

3
@ রবীন্দ্রপায়ালের একটি আকর্ষণীয় প্রশ্ন রয়েছে, ব্রোকো। একটি বাজার দৃষ্টিকোণ থেকে, কি হল es5 বা es6 এবং যারা লাইন বরাবর কাপড় বনাম টিএস-এর মূল্য কত?
জে.ওয়েলস

3
ঠিক আছে, সুতরাং এই পোস্টটি কয়েক বছরের পুরানো /। আসুন আমরা আজ, সেপ্টেম্বর 28, 2017 এ দ্রুত এগিয়ে চলেছি most বেশিরভাগ ব্রাউজারগুলি কি ES6 সমর্থন করছে?
দেউই ব্যাংকগুলি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.