আমি এক বছরের কম সময়ের জন্য প্রোগ্রামিং করছি এবং কিছু অভিজ্ঞতা লেখার সিস্টেম অ্যাপ্লিকেশন, ওয়েব অ্যাপ্লিকেশন এবং ব্যবসায় / সংস্থার জন্য স্ক্রিপ্ট নিয়েছি। তবে, জাজানো, রেলস বা জেন্ডের মতো কাঠামোর সাথে কাজ করা আমি সত্যিই কখনও করি নি।
জাজানো ফ্রেমওয়ার্কটি সন্ধান করে ফ্রেমওয়ার্কগুলিতে কতটা বিমূর্তভাবে দূরে থাকায় আমি একটু হতাশ। আমি ডিআরওয়াই এবং ন্যূনতম কোডের মূল লক্ষ্যগুলি বুঝতে পেরেছি, তবে বিভিন্ন মডিউল এবং কোর ফাংশনগুলির ভারী বিমূর্ততার উপর এই ওভার নির্ভরতা কিছু মনে হয়:
মডিউল / ফ্রেমওয়ার্কের পরিবর্তিত প্রকৃতির কারণে প্রোগ্রামগুলি সত্যই দ্রুত তারিখ তৈরি করে,
ফ্রেমওয়ার্ক এবং মডিউলগুলি উপলব্ধ এবং তাদের সমস্ত আইডিয়াসক্রাইজির আধিক্যগুলির কারণে কোডটি বোঝা শক্ত করে তোলে,
আপনি যদি সমস্ত ডকুমেন্টেশন না পড়ে থাকেন তবে কোডকে কম যুক্তিসঙ্গত করে তোলে; উদাহরণস্বরূপ, আমি কিছু তালিকার বোধগম্যতা এবং শর্তসাপেক্ষ যুক্তি দিয়ে পড়তে পারি এবং কোন প্রোগ্রামটি কী করছে তা নির্ধারণ করতে পারে, তবে যখন আপনি সুনির্দিষ্ট স্ট্রিং এবং অভিধানগুলি পাস করার প্রয়োজনীয়তাগুলি দেখেন, আপনি যদি ইতিমধ্যে গুরু না হন তবে বিষয়গুলি বুঝতে কিছুটা অসুবিধা হয় একটি প্রদত্ত মডিউল; এবং:
ফ্রেমওয়ার্কগুলির মধ্যে স্যুইচ করা কঠিন এবং ক্লান্তিকর করে তোলে। ভাষার মধ্যে স্যুইচিং ইতিমধ্যে একটি চ্যালেঞ্জ, তবে আপনার যদি তাদের মূল কার্যকারিতা / দর্শন সম্পর্কে দৃ strong়ভাবে উপলব্ধি থাকে তবে এটি পরিচালনাযোগ্য। ফ্রেমওয়ার্কগুলির মধ্যে স্যুইচিং রোট মুখস্তকরণের বিষয় বলে মনে হয়, যা কিছু উপায়ে এই ফ্রেমওয়ার্কগুলি অপসারণের জন্য ডিজাইন করা খুব অদক্ষতাকে উত্সাহিত করেছিল।
আমাদের কি সত্যিই কোনও মাইএসকিউএল কোয়েরির মতো সহজ জিনিসের উপরে অ্যাবস্ট্রাকশন এর 50 টি স্তর পছন্দ করা দরকার? পিএইচপি-র পিডিও ইন্টারফেসের মতো কিছু কেন ব্যবহার করবেন না, যেখানে প্রস্তুত বিবৃতি / ইনপুট পরীক্ষা পরিচালনা করা হয় তবে সর্বজনীনভাবে বোধগম্য এসকিউএল কোয়েরি এখনও ফাংশনের একটি অংশ?
এই বিমূর্ততা কি সত্যিই দরকারী? বৈশিষ্ট্য বিন্দুগুলি কী তাদের অকেজো করে তোলে, কাঠামো ব্যবহার না করে লিখিত অনুরূপ অ্যাপ্লিকেশনগুলির তুলনায় অ্যাপ্লিকেশনগুলিকে আরও কঠিন করে তোলে?
Do we really need to put like 50 layers of abstraction on top of something as simple as a MySQL query?
- প্রথমত, একটি ভাল কাঠামো হ'ল বিমূর্তির একটি স্তর (অভ্যন্তরীণভাবে 2 বা 3) এবং দ্বিতীয়ত "মাইএসকিউএল কোয়েরির মতো সহজ কিছু" বাস্তবে একটি ভাল ডজন বিমূর্ততা জড়িত। এমনকি আপনি আপনার ব্যাখ্যা করা ভাষা থেকে কার্যকর হওয়া ক্যোয়ারীটি এটি ডেটাবেস সার্ভারে পরিণত করার পরেও, আপনি এখনও শারীরিক স্টোরেজ ওভার ফাইল সিস্টেমে ইঞ্জিনগুলির দ্বারা ডাটাবেসগুলির উপর প্রশ্ন থাকতে পারেন। সুতরাং সংক্ষেপে: হ্যাঁ, আমাদের বিমূর্ততা প্রয়োজন, কারণ তারা আমাদের মাথাটি বিস্ফোরিত হতে রাখে।
as a relatively inexperienced programmer
- আপনি যতক্ষণ সফ্টওয়্যার তৈরি করেন তত বেশি আপনি চাকাটিকে পুনর্নির্মাণের জন্য কম সময় ব্যয় করতে এবং বাড়ীতে আপনার পছন্দসই কাজগুলিতে বেশি সময় ব্যয় করার প্রশংসা করবেন।