কারও সংগঠন জাভা থেকে স্কালায় স্থানান্তর শুরু করেছে? যদি হ্যাঁ, আপনি এটি কিভাবে করবেন? আমার সহকর্মীদেরও এটি করতে উত্সাহিত করার জন্য আমি কী করতে পারি?
কারও সংগঠন জাভা থেকে স্কালায় স্থানান্তর শুরু করেছে? যদি হ্যাঁ, আপনি এটি কিভাবে করবেন? আমার সহকর্মীদেরও এটি করতে উত্সাহিত করার জন্য আমি কী করতে পারি?
উত্তর:
সম্ভবত সবচেয়ে সহজ উপায় হ'ল প্রথম পরীক্ষার জন্য স্কেলা ব্যবহার করা। এই ক্ষেত্রে, আপনাকে এমনকি আপনার বসকেও বলতে হবে না :-) যদি তিনি জিজ্ঞাসা করেন, তবে তাকে বলুন "এটি কেবলমাত্র আমার ব্যক্তিগত পরীক্ষার কেস, এটির জন্য স্কালা ব্যবহার করা এত সহজ এবং দ্রুত"। একবার আপনার (এবং আপনার সংস্থা) স্কালার সাথে পর্যাপ্ত অভিজ্ঞতা হয়ে গেলে আপনি এটি 'আসল' কোডের জন্য ব্যবহার শুরু করতে পারেন।
সংস্থাগুলি দৃষ্টিকোণ থেকে জাভাতে থাকা ভাল, যদি স্কালায় স্থানান্তরিত করে তারা যে লাভ করতে পারে তার কোনও স্বতন্ত্র সুবিধা না থাকে। অ্যাপ্লিকেশনটি তৈরি করতে এবং বজায় রাখতে জাভা প্রোগ্রামারদের ভাড়া নেওয়া তাদের পক্ষে সহজ। স্ক্যালায় :-) সমস্ত কিছু প্রয়োগ করার পরে আপনি কেবল চলে যেতে পারেন :-)
আপনার বসকে এরকম অভিজ্ঞতা পড়তে দিন:
আমি বর্তমানে আমার বেশিরভাগ জিনিস এখন স্কালায় করছি। (আমার উল্লেখ করা উচিত যে আমি মনে করি যে স্কাল কিছুটা আগে হুইল আবিষ্কারের পর থেকে সেরা জিনিস: :- ডি)
আমার বিনীত মতে এটিই একমাত্র ভাষা যা মানুষকে (আরও) অবজেক্ট-ওরিয়েন্টেড এবং (আরও) কার্যকরী পদ্ধতির মধ্যে কোনও অযৌক্তিক বিভাজন ছাড়াই কোনও কাজের সর্বোত্তম পন্থা বেছে নিতে দেয়।
এর আগে এমন কিছু দাবি করা ভাষাগুলি দেখে আমি মূলত দুটি প্রতিযোগিতামূলক ভাষা নকশা শিবির দেখতে পাচ্ছি:
অবজেক্ট-ওরিয়েন্টেড দিক থেকে যেগুলি দেখেছিল যে কার্যকরী প্রোগ্রামিংটি ইদানীং কিছু আকর্ষণ পেয়েছে এবং ভেবেছিল "আচ্ছা, আমরা আসলে সেই কার্যকরী জিনিসটি বুঝতে পারি না, তবে আসুন আমরা আমাদের ভাষায় কিছু অভিনব সিনট্যাকটিকাল চিনি যুক্ত করব, সুতরাং আমরা দাবি করতে পারি যে এটি কার্যকরী খুব! " (উদাহরণ: জাভা, পাইথন)
তারপরে কার্যনির্বাহী পক্ষের লোকেরা, যারা ভেবেছিলেন "আচ্ছা, আমাদের কার্যকরী দৃষ্টিভঙ্গি অন্য যে কোনও কিছুর চেয়ে উচ্চতর এবং সেই অবজেক্ট-ভিত্তিক বাজে কথা বিরক্তিকর, তবে আসুন আমরা আমাদের ভাষাতে কিছু অতিরিক্ত কীওয়ার্ড রাখি, এটি আমাদের ভাষাটিকে নিশ্চিতভাবে পালানোর একাডেমিয়া তৈরি করবে sure ! " (উদাহরণ: এফ #, ওক্যামল)
স্কালার ডিজাইনাররা উভয় পক্ষ থেকে আগত অনেকগুলি দৃষ্টিভঙ্গি একীভূত করে এবং কিছু সু-নকশিত ভাষা তৈরি করেছে, যা হ'ল - আমার বিনীত মতে - অন্যান্য ভাষার সবচেয়ে বড় পার্থক্য, যা প্রোগ্রামিং ভাষার নকশায় "ফ্রাঙ্কেনস্টাইন" পদ্ধতির গ্রহণ করার সিদ্ধান্ত নিয়েছিল।
লিফ্টের সাথে কেবলমাত্র ছোট্ট কাজগুলিই করেছেন এবং কেবলমাত্র রেল এবং জ্যাঙ্গোর সাথে কেবলমাত্র অতি অভিজ্ঞতার সাথে, আমাকে স্বীকার করতে হবে যে লিফ্টের কিছু আমার প্রত্যাশার চেয়ে কেন আলাদাভাবে কাজ করেছিল, তা নিয়েই আমি ভাবছিলাম this ত্রুটিযুক্ত এবং লিফ্টের পদ্ধতির উচ্চতর।
লিফট অবশ্যই "স্কালার সহজ পরিচিতি" নয় তবে লিফট কীভাবে কাজ করে তা শিখার আগে স্কালার শেখার মতো প্রায় পুরস্কৃত হয়েছিল।
এটিতে কোনও যুক্তি ছাড়াই "পরিষ্কার" দৃষ্টিভঙ্গি রাখার ক্ষমতা অন্যান্য কাঠামোগুলির ক্ষেত্রে এটি একই দাবিদার ক্ষেত্রে একটি দুর্দান্ত উন্নতি, তবে এটির সংক্ষিপ্ত হয়ে পড়ে। স্কালার এক্সএমএল আক্ষরিক সমর্থন আপনার প্রতিক্রিয়াটির সু-গঠনকে যাচাই করা সম্ভব করে তোলে: সংকলক সংকলনের সময় প্রমাণ করবে যে আপনি কেবল ক্লায়েন্টের সাথে সুগঠিত এক্সএমএল নির্গত করেন।
লিফটটি কার্যকর প্রযুক্তি এবং এই মুহূর্তে যদি আপনি ওয়েব অ্যাপ্লিকেশন তৈরি করতে চান যা নিজেরাই পাগল পরিমাণে কোড না লিখে "বাস্তব" ডেস্কটপ অ্যাপ্লিকেশনগুলির মতো দেখতে, অনুভব করতে এবং আচরণ করতে চায় তবে একমাত্র আসল পন্থা।
[ উত্স ]
গত দু'বছর ধরে আমরা অভিভাবক.কম.উকে এই যাত্রাটির সাথে সুষ্ঠু পথে এগিয়েছি - আমাদের ওপেন প্ল্যাটফর্মটি স্কালায় নির্মিত হয়েছে, আমাদের মূল সিএমএস (মূলত জাভাতে) আরও স্কালাকে সংহত করছে (আমরা শীঘ্রই এখান থেকে সরে যাচ্ছি) আমাদের নির্মাণের জন্য ম্যাভেন টু এসবিটি ) এবং এটি একটি দুর্দান্ত অভিজ্ঞতা হয়েছে - সত্যই আমাদের ডেভগুলিকে আরও শক্তিশালী করে তুলছে, যাদের মধ্যে কিছু জাভা দিয়ে কিছুটা জেদ হয়ে উঠছিল :)
আমি আপনাকে আমাদের রূপান্তর সম্পর্কে এই দুটি নিবন্ধ পড়তে উত্সাহিত করব এবং সম্ভবত এগুলি আপনার স্পর্শকাতর চুলের সাহায্যকারী প্রমাণ হিসাবে ব্যবহার করব:
http://skillsmatter.com/podcast/home/how-we-moved-from-java-to-scala
http://www.infoq.com/articles/guardian_scala
কিছু দ্রুত টিপস:
স্কালায় আপনার পরীক্ষাগুলি লিখে শুরু করুন - এইভাবে আপনি ভাষার সাথে পরিচিত হতে পারবেন, এতে আপনার আত্মবিশ্বাস বাড়িয়ে তুলতে পারবেন এবং সরাসরি আপনার প্রোডাকশন সার্ভারগুলিতে রানটাইম যুক্ত করার বিষয়ে আপনার যে ভয় থাকতে পারে তা কাটিয়ে উঠতে হবে না।
নতুন প্রযুক্তি চেষ্টা করার অনুমতি চাইবেন না । ক্ষমা চাইলে আরও ভাল হয় :-)
এই প্রশ্ন ঘুঘু - অন্য প্রশ্নে লেজ। এটি স্ক্যালায় স্থানান্তরিত কোন ধরণের বা প্রকল্পগুলির জন্য অতিরিক্ত মূল্য সরবরাহ করে? আমি জাভা দিবসটি আমার দিনের কাজটি করি, তবে সেই দিনটি সম্পর্কে স্বপ্ন দেখি যেদিন আমি "ক্রোধে" স্কালাকে ব্যবহার করতে পারি।
একটি দম্পতি আমার নিজের প্রশ্নের উত্তর:
অভিনেতাভিত্তিক সম্মতিতে দুর্দান্ত সুবিধা দেওয়ার জন্য সমস্যাগুলি (আক্কা)
COMET (লিফট) এর মাধ্যমে তাদের কাছে ডেটা ঠেকানোর চেয়ে ওয়েব অ্যাপ্লিকেশনগুলি
অন্য কোন অন্তর্দৃষ্টি বা আরও ভাল অভিজ্ঞতা?
আমি স্ক্যালায় আমার জাভা অ্যাপ্লিকেশনগুলির জন্য পরীক্ষাগুলি লিখছি এবং সম্মত হচ্ছি যে এটি শুরু করার জন্য ভাল জায়গা। আমার পরীক্ষার কভারেজটি আরও ভাল কারণ এগুলি লেখার জন্য এটি আরও দ্রুত এবং সহজ (যেহেতু আমি স্কালাকে ব্যবহার করতে পারি তাই আমি স্বেচ্ছায় আরও বেশি পরীক্ষার লেখাগুলিতে মনোনিবেশ করি)।
আমি স্ক্যালায় প্রোটোটাইপস এবং থ্রোওয়ে পিওসিগুলিও বেশ একচেটিয়াভাবে করা শুরু করেছি। আমি ম্যানেজার এবং সুপারভাইজারদের যথাসম্ভব সচেতন করার চেষ্টা করি যে আমি এই ওয়ান-অফগুলির জন্য স্কালা ব্যবহার করেছি এবং জোর দিয়েছি যে স্কেলার কারণে আমি কিছু পেতে এবং দ্রুত চালাতে সক্ষম হয়েছি। আমাদের হলিডে পার্টি হোয়াইট হাতির গেমটি ট্র্যাক করতে আমাদের একটি ওয়েব অ্যাপের প্রয়োজন (ভাল, এক প্রকারের প্রয়োজন) - স্কালাত্রা এবং মঙ্গোডিবি সহ 1.5 ঘন্টা এবং আমার পুরো বিভাগটি এই অ্যাপটি দেখছে এবং এ সম্পর্কে জিজ্ঞাসা করছে। আসুন এটির মুখোমুখি হন, আপনি ভাষাটি আরও কতটা ভাববাদী বা এর একত্রে মডেলটি আরও উন্নত তা ম্যানেজারদের কাছে বর্ণনা করার মতো কোথাও পাবেন না। তবে আপনি যদি এগুলি দেখান তবে আপনি আরও দ্রুত কাজটি করতে পারেন, আপনি স্থল অর্জন করতে পারেন।
তবে আমি মনে করি সবচেয়ে বড় অংশটি বিকাশকারীদের স্কালা সম্পর্কে উত্সাহিত করছে। আমি নিশ্চিত যে আমরা সকলেই এমন বিকাশকারীদের সাথে কাজ করব যারা সক্রিয়ভাবে নতুন প্রযুক্তির সাথে তাল মিলিয়ে চলবে না, এবং কখনও কখনও এই লোকেরা নতুন কিছু করার জন্য উত্তেজিত হওয়া কঠিন (কেন, আমি সত্যিই বুঝতে পারি না)। এই লোকেদের স্কালার কিছু সুবিধা দেখানো (রিপাবলিকেশন চেষ্টা করুন) কী is যদি আপনি উত্পাদনশীলতার একই সুবিধাগুলি সম্পর্কে যথেষ্ট বিকাশকারী গুঞ্জন পান তবে আপনি স্ক্যালাকে আপনার প্রতিষ্ঠানে আনুষ্ঠানিকভাবে গ্রহণ করার সম্ভাবনা বেশি।
এই শব্দটি ছড়িয়ে দেওয়া এবং তৃণমূলের প্রচেষ্টাটি রোলিং ২০১১-এ আমার মূল লক্ষ্য। এটি কীভাবে বিস্তৃত হবে তা আমরা দেখতে পাব, কারণ আমার কাজের বেশিরভাগ অংশে আমি স্কালাকে যেভাবে ব্যবহার করব সেদিনের জন্য আমি অপেক্ষা করতে পারি না।
আমি ভাবছি কেন একজন বা অন্যটি বেছে নেবেন? কেন জাভা দরজা বাইরে ফেলে দিয়ে স্ক্যালায় যেতে হবে?
কাজের জন্য নিখুঁত সরঞ্জাম বলে কোনও জিনিস নেই। দরজাটি সম্পূর্ণরূপে এক ভাষাতে ছুঁড়ে ফেলার এবং অন্যটির সাথে এটি প্রতিস্থাপনের কোনও কারণ নেই।
টিবিএইচ, একটি ভাষা বা পরিবেশের উপর দৃষ্টি নিবদ্ধ করে এমন সংস্থায় আমি আর কাজ করতে চাই না। অনেক কিছু জানতে এবং কাজের জন্য সঠিক সরঞ্জামটি বেছে নেওয়া আরও ভাল।
তার পরেও, আপনার সংস্থাটি সম্পূর্ণরূপে স্কালায় স্যুইচ করা অসম্ভব না হলেও এটি শক্ত। পরিবর্তে, আমি স্কেলায় কিছু বা কিছু না পেরে কিছু প্রকল্প (বা এমনকি প্রকল্পগুলির কিছু অংশ) করার চেষ্টা করব। আপনি উদাহরণস্বরূপ, স্পেস 2 এর সাথে আপনার জাভা কোডটি পরীক্ষা করার বিকল্প বেছে নিতে পারেন, যা সাধারণ পুরানো জুনিতের তুলনায় খুব সুন্দর সিনট্যাক্সযুক্ত - এবং এটি জটিল, বিভ্রান্তিকর এবং শক্ত স্কাল কোড এবং দৃষ্টান্তগুলি নয়, কেবল আপনার অ্যাপ্লিকেশনের আচরণের সংজ্ঞা দেওয়ার জন্য সিনট্যাকটিক চিনি রয়েছে ।
একটি ভাল উপায় একই প্রোগ্রামের দুটি সংস্করণ প্রদর্শন করা। এটি করে আপনি আপনার সহকর্মীদের কাছে (অনুশীলনে) স্কালার এক্সপ্রেশনেসটি প্রদর্শন করতে পারেন । অন্যান্য সমস্যাগুলির জন্য একই জিনিসটি করা (এক্সএমএল, সমঝোতা ইত্যাদি) নির্দিষ্ট সমস্যা মোকাবেলার জন্য জাভা পরিবর্তে স্কালার ব্যবহারের সুবিধা প্রদর্শন করতে পারে।
অবশ্যই একদিনের মধ্যে মাইগ্রেশন হওয়ার আশা করবেন না। অনেকগুলি সমস্যা রয়েছে যা আপনি অবমূল্যায়ন করতে পারেন: শেখার বক্ররেখা, বিদ্যমান কোডবেস ইত্যাদি