ওয়েব-অ্যাপটি "ভবিষ্যতের প্রমাণ" না হওয়ার ভয়


106

আমি একটি ছোট, স্থানীয় সাআস ওয়েব অ্যাপ্লিকেশনটির ওয়েব বিকাশকারী। বর্তমানে এটিতে প্রায় দেড় ডজন ক্লায়েন্ট রয়েছে।

আমি যেমন অ্যাপ্লিকেশনটি ডিজাইন করে চলেছি, প্রজেক্টে যে কোনও সময় প্রতিশ্রুতিবদ্ধ হতে নিজেকে বোঝাতে আমার পক্ষে ক্রমশ শক্ত হয়ে উঠছে, যা প্রথম পর্যায়ে ঘটেছে। প্রকল্প এবং আমি ইতিমধ্যে লিখেছি কোডের সাথে জড়িত হওয়ার পরে, আমি আশঙ্কা করছি যে আমার প্রতিশ্রুতিবদ্ধ সমস্ত অতিরিক্ত কাজ অদূর ভবিষ্যতে বাতিল হয়ে যাবে, যখন অ্যাপ্লিকেশনটি ব্যবসাটি বাড়ার সাথে সাথে স্কেলটি না বাড়িয়ে দেবে।

ইন্টার্নশীপের জন্য আবেদনকারী একজন বিশ্ববিদ্যালয়ের শিক্ষার্থী হিসাবে, আমি নিয়োগকর্তাদের সাক্ষাত্কারের সময় কোনও ওয়েব ফ্রেমওয়ার্ক ব্যবহার না করার বিষয়ে আমার পছন্দ সম্পর্কে প্রশ্ন করেছি, যার ফলে কেবল আমার আগের কাজটি সম্পর্কে আরও সন্দেহ দেখা দিয়েছে। আমি কেবল কোনও ওয়েব ফ্রেমওয়ার্ক জানি না এবং কোনটি ব্যবহার শুরু করব তাও জানি না।

আমি জানুয়ারিতে একটি পূর্ণ-স্ট্যাক বিকাশকারী হিসাবে একটি ইন্টার্নশিপ অবতরণ করেছি, যেখানে আমি ফ্রন্ট-এন্ড ফ্রেমওয়ার্কগুলি শিখতে শুরু করব, তবে অ্যাপ্লিকেশন শেষ করার চাপ বাড়ছে, এবং আমি অ্যাপ্লিকেশনটিকে পুরোপুরি স্ক্র্যাপিং এবং আবার শুরু করার বিষয়ে বিবেচনা করছি, যা আমি এর আগে কিছু করেছি অ্যাপটি বর্তমানে পিএইচপি এবং jQuery এ নির্মিত হয়েছে (AJAX কলগুলির জন্য) এবং এটির ডাটাবেসের জন্য মাইএসকিউএল ব্যবহার করে। আমি কীভাবে এই মানসিক ব্লকটি কাটিয়ে উঠতে পারি এবং আমার অ্যাপ্লিকেশনটি স্কেলযোগ্য হবে তা নিশ্চিত করার জন্য কোনও ধারণা? আগাম ধন্যবাদ.


93
কাঠামো ব্যবহার করা অর্থ ব্যয়বহুলভাবে আরও ভাল নয়, সস্তা হওয়া উচিত। ব্যবসায় সর্বদা "কেন সস্তা নয়" জিজ্ঞাসা করবে কারণ এটি তাদের কাজ। "এই ফ্রেমওয়ার্কটি কেন এটি নয়, বা কাস্টম" এর জবাব দিতে অনেক বছর অভিজ্ঞতা লাগে। আপনি সম্ভবত কোনও শিক্ষার্থী / ইন্টার্ন হিসাবে এই প্রশ্নের কোনও অর্থবহ উত্তর দিতে পারবেন না কারণ একটি প্রদত্ত কাঠামো কোনও প্রদত্ত সমস্যার জন্য কীভাবে কাজ করে তা প্রত্যক্ষ করার জন্য আপনি পর্যাপ্ত প্রকল্পে অংশ নেননি। এই ধরনের অভিজ্ঞতা ব্যতীত, আপনি কেবলমাত্র একটি কাজটিই করতে পারেন কোনও প্রদত্ত ফ্রেমওয়ার্ক বিপণনের শিকার fall
এজেন্ট_এল

24
ভবিষ্যতের বিষয়ে আপনি কেবলমাত্র জানেন যে আপনি এটি সম্পর্কে কিছুই জানেন না। সুতরাং কেবল বর্তমানের সাথেই চলুন। ভবিষ্যতে আপনাকে লাথি মারার উপায়গুলি খুঁজে পাবে *** তবে আপনি এড়াতে গিয়ে যতটা সময় নষ্ট করেন!
আলেফজেরো

20
"আমি ইতিমধ্যে লিখেছি ... কোডের সাথে সংযুক্ত হয়ে বড় হয়েছি" আমাদের কাজের সাথে সংযুক্ত হওয়া এবং এটি পরিবর্তন করতে প্রতিরোধী হওয়া আমাদের স্বভাব। আপনি যদি তা করেন তবে এটি সংস্করণ নিয়ন্ত্রণে থাকে। সফটওয়্যারটি বোঝানো হয়েছে বাস্তব জগতের মতোই, পরিবর্তন করা। কোডটি মুছতে বা এটিকে তৈরি করার সময় এটির যথেষ্ট পরিবর্তন করতে ভয় পাবেন না।
বিটসোফ্লোগিক

8
প্রকল্পটি স্ক্র্যাপিংয়ের জন্য, আমি এটির বিরুদ্ধে পরামর্শ দেব। সাধারণত স্ক্র্যাচ থেকে শুরু করে দুর্দান্ত লাগছে, কারণ আপনি ইতিমধ্যে সমস্যার সমাধান করে প্রচুর সমস্যার মুখোমুখি হন। শেষ পর্যন্ত যদিও, আপনি এমন একটি নতুন সমস্যায় ফিরে এসেছেন যা মডেলটির সাথে খাপ খায় না The পরিবর্তিত নতুন সমস্যাগুলি সমাধান করতে পুনরায় লেখার সময়টি ব্যয় করা যেতে পারে। আপনি কী কী তা জানার পরে আপনি সর্বদা বাধাগুলি সমাধান করতে পারেন।
বিটসফ্লোগিক

6
@ জেমস_পিক আপনি কোনও বেসিক কাঠামো ছাড়াই ওয়েব প্রকল্পগুলি করেন ? সুতরাং আপনি একটি সাধারণ http লাইব্রেরির শীর্ষে রাউটিং যুক্তি এবং অন্যান্য সমস্ত জিনিসকে পুনরায় প্রতিস্থাপন করছেন? এটি অত্যধিক বলে মনে হচ্ছে এবং এটি আপনাকে কী সুবিধা দেবে তা আমি দেখতে ব্যর্থ।
ভু

উত্তর:


201

নিখুঁত হ'ল শত্রু।

বা অন্য কোনও উপায় রাখুন, আজ এটি নিয়ে চিন্তা করবেন না। আপনার অ্যাপ্লিকেশনটি যা করার দরকার তা যদি করে তবে তা ঠিক আছে। এটা না একটি খারাপ জিনিস আরও লাইন নিচে সফ্টওয়্যার অংশগুলি পুনর্লিখন; এই মুহুর্তে আপনি 1) আপনি কী তৈরির চেষ্টা করছেন তা আরও স্পষ্টভাবে জেনে নিন এবং 2) কোন বিটগুলি আসলে বাধা। আপনি একটি অ্যাপ্লিকেশন লেখার জন্য প্রচুর পরিমাণে সময় ব্যয় করতে পারেন যা এক মিলিয়ন ব্যবহারকারীদের কাছে স্কেল হবে তবে আপনি বর্তমানে যা পেয়েছেন তার চেয়ে বর্তমান বর্তমান ছয় গ্রাহকের পক্ষে এর চেয়ে ভাল আর কিছু হবে না


23
ভাল যুক্তি. যদি আপনি ১ মাসের পুনর্লিখনের ঘটনাটি ভবিষ্যতের প্রতিরোধের জন্য ভবিষ্যতের প্রতিরোধের চেষ্টা করে ব্যয় করেন তবে আপনি আপনার of সপ্তাহের সময় হারাবেন। পরিবর্তনগুলি উপস্থিত হবে তা গ্রহণ করুন এবং ভবিষ্যতের প্রমাণ কেবল তখনই এটি করা দরকার।
নিল

83
ইয়াগনি, বাচ্চা, ইয়াগনি
কেভিন

32
" অকাল অপটিমাইজেশনের আর একটি কেস হ'ল সমস্ত অশুভের মূল "। সম্ভবত উল্লেখযোগ্য যে আপনি 6 জন ব্যবহারকারী থেকে দশ মিলিয়ন লাফাতে পারবেন না। যদি 6 জন ক্লায়েন্ট একজন বিকাশকারীকে প্রদানের জন্য যথেষ্ট পরিমাণে থাকে তবে আপনি 100 ক্লায়েন্টের কাছে পৌঁছানোর পরেও কোডটির জন্য আলাদা কাঠামোর প্রয়োজন হতে পারে কেবল একই সময়ে একাধিক ডিভগুলিকে এতে কাজ করার অনুমতি দেওয়া হয়। এটি পারফরম্যান্স অনুকূলকরণ থেকে বেশ আলাদা এবং এক মিলিয়ন ব্যবহারকারীকে জাগ্রত করার চেয়ে অনেক আগে ঘটে happens
আর স্মিটজ

22
@ আর.স্কিমেটজ সেই উদ্ধৃতিটি আজকাল কম্পিউটার প্রোগ্রামিংয়ে আর্ট হিসাবে নুথকে যেভাবে ব্যবহার করেছে একেবারে ভিন্ন প্রসঙ্গে ব্যবহৃত হয়েছে। নথ স্থিরভাবে "পুরোপুরি প্রোগ্রামিং শুরু করুন এবং পরে অনুকূলিতকরণ সম্পর্কে উদ্বিগ্ন" whole তিনি যা বলছেন তা হ'ল লোকরা কোডের ভুল অংশগুলিকে ভুল সময়ে অনুকূলিত করে। এর অর্থ কোনওভাবেই নয় যে আপনি কোড লেখা শুরু করার আগে এটি দক্ষ কিনা তা নিশ্চিত করার জন্য আপনার আর্কিটেকচার সম্পর্কে চিন্তাভাবনা করার জন্য আপনার কিছুটা সময় ব্যয় করা উচিত নয়। আপনি অন্যান্য অনুভূতি পছন্দ করতে পারেন, তবে আপনার সেখানে নুথকে ডিফেন্ডার হিসাবে উদ্ধৃত করা উচিত নয়।
ভু

20
@ আর.শ্মিটজ ফিরে যখন হোয়ের / নুথ এই বিবৃতিটি করেছিলেন "অপ্টিমাইজেশন" অর্থ চক্র গণনা এবং অন্যান্য জিনিস যা আমরা আজ কোনওভাবেই করি না, "কোডিং শুরু করার আগে কোনও ভাল আর্কিটেকচারের কথা ভাবেন না"। ভাল সিস্টেমের নকশা সম্পর্কে কেবল চিন্তা না করার অজুহাত হিসাবে উদ্ধৃতিটি ব্যবহার করা তাদের মনের কথাটি কেবল তা নয়।
ভু

110

আমি কীভাবে এই মানসিক ব্লকটি কাটিয়ে উঠতে পারি এবং আমার অ্যাপ্লিকেশনটি স্কেলযোগ্য হবে তা নিশ্চিত করার জন্য কোনও ধারণা?

ইস্যুটির ক্রুশ স্কেলেবিলিটি নয়। ইস্যুটির ক্রুস ভাবছে যে আপনি এটি প্রথমবারেই পাবেন

আপনার পরিষ্কার কোড লেখার উপর ফোকাস করা উচিত। কারণ আপনাকে যখন (ভবিষ্যতে) অনিবার্যভাবে কিছু পরিবর্তন করতে হবে তখন ক্লিন কোড সুবিধাটি সর্বাধিক করে তোলে। এবং এটিই আপনার আসল লক্ষ্য হওয়া উচিত।

আপনি এখন যা করার চেষ্টা করছেন তা হ'ল লেখার জন্য সঠিক কোডটি ভাবার চেষ্টা করা। তবে আপনি যদি এটি পরিচালনা করেও থাকেন তবে কে বলেছে প্রয়োজনীয়তাগুলি বদলাচ্ছে না, বা আপনি ভুল তথ্য বা ভুল যোগাযোগের উপর ভিত্তি করে আপনার সিদ্ধান্ত নিয়েছেন?

আপনি ভুল করা এড়াতে পারবেন না, এমনকি যদি সেগুলি আপনার দোষ না হয়। ভবিষ্যতে আপনার কোনও পরিবর্তন করার দরকার পড়বে না এমন কোড লেখার আশায় পরিবর্তে কোড লেখার দিকে মনোনিবেশ করুন যা পরে জিনিসগুলি পরিবর্তন করা সহজ।

প্রকল্প এবং কোডটি আমি ইতিমধ্যে লিখেছি সংযুক্ত হয়েছি,

আমি এই অনুভূতির সাথে সম্পূর্ণ সহানুভূতিশীল। আপনার লেখা কোডটির সাথে সংযুক্ত হওয়া একটি সমস্যা।

ধ্রুব হওয়া উচিত কেবলমাত্র একটি নির্দিষ্ট সমস্যা সমাধানের জন্য আপনার ইচ্ছা । আপনি কীভাবে এই সমস্যাটি সমাধান করবেন তা কেবলমাত্র একটি গৌণ উদ্বেগ।

আগামীকাল যদি কোনও নতুন সরঞ্জাম প্রকাশিত হয় যা আপনার কোডবেসকে ৮০% হ্রাস করে, আপনি কি বিরক্ত হবেন যে আপনার কোডটি আর ব্যবহার করা হচ্ছে না; বা আপনি কি খুশি হতে চলেছেন যে আপনার কোডবেসটি আরও ছোট এবং অনেক বেশি ক্লিনার / আরও ম্যানেজমেন্টে পরিণত হয়েছে?

যদি প্রাক্তন হয় তবে আপনার সমস্যা আছে: আপনি কোডটির সমাধান দেখছেন না । অন্য কথায়, আপনি কোডটিতে ফোকাস করছেন এবং বড় চিত্রটি দেখছেন না (সমাধানটি এটি সরবরাহ করা লক্ষ্য করে)।

আমি আশঙ্কা করছি যে অদূর ভবিষ্যতে যখন আমি প্রতিশ্রুতিবদ্ধ করি সে সমস্ত অতিরিক্ত কাজ উল্টে ফেলা হবে, যখন অ্যাপ্লিকেশনটি ব্যবসাটি বাড়ার সাথে সাথে স্কেলটি বাড়িয়ে তুলবে না।

ভিন্ন দিনের জন্য এটি একটি ভিন্ন সমস্যা।

প্রথমত, আপনি এমন কিছু নির্মাণ করেন যা কাজ করে। দ্বিতীয়ত , এটি এখনও প্রদর্শিত হতে পারে এমন কোনও ত্রুটিগুলি সমাধান করার জন্য আপনি কোডটি উন্নত করেন। আপনি বর্তমানে যা করছেন তা হ'ল দ্বিতীয় কাজটি করার ভয়ে প্রথম কাজটি ধরে রাখা।

তবে এর বাইরে আর কোন বিকল্প নেই? আপনি ভবিষ্যত বলতে পারবেন না । আপনি যদি ভবিষ্যতের সম্ভাবনাগুলি বিবেচনা করতে নিজের সময় ব্যয় করেন তবে আপনি যেভাবেই অনুমান করা শেষ করতে চলেছেন । একটি অনুমান সবসময় মৃত ভুল বলে প্রবণ থাকে।

পরিবর্তে, অ্যাপ্লিকেশনটি তৈরি করুন এবং প্রমাণ করুন যে আসলেই একটি সমস্যা আছে। এবং একবার সমস্যাটি পরিষ্কার হয়ে গেলে আপনি এটি সম্বোধন শুরু করবেন।

এটি অন্যভাবে রাখার জন্য: হেনরি ফোর্ড কখনই এমন গাড়ি তৈরি করেনি যা 2018 মান / প্রত্যাশা মেনে চলে। তবে যদি তিনি আধুনিক মানের ভিত্তিতে ত্রুটিযুক্ত মডেল টি তৈরি না করে থাকেন তবে কেউ গাড়ি ব্যবহার শুরু করতে পারত না, কার কারো শিল্প থাকত না এবং কারও কাছে এমন একটি গাড়িও থাকত না যা তারা উন্নত করার চেষ্টা করতে পারে।

আমার নিয়োগকর্তাদের সাক্ষাত্কারের সময় কোনও ওয়েব ফ্রেমওয়ার্ক ব্যবহার না করার বিষয়ে আমার পছন্দ সম্পর্কে প্রশ্ন করা হয়েছিল, যার ফলে কেবল আমার আগের কাজটি আমাকে আরও সন্দেহ করতে পারে।

এখানে গুরুত্বপূর্ণ অংশটি নয় যে আপনি কোন কাঠামোটি ব্যবহার করছেন (যে কোনও নিয়োগকর্তা যিনি আপনাকে বিচার করেন তারা তাদের কাজটি সঠিকভাবে করছেন না)। এখানে গুরুত্বপূর্ণ অংশটি হচ্ছে আপনি কী করছেন এবং আপনি এটি কেন করছেন তা জেনে রাখা

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

এখানে কেবলমাত্র খারাপ উত্তর হ'ল "আমি জানি না", কারণ এটি জ্ঞাত সিদ্ধান্ত নেওয়ার অভাব দেখায়। যে হয় একজন নিয়োগকর্তা জন্য একটি লাল পতাকা।

আমি কেবল কোনও ওয়েব ফ্রেমওয়ার্ক জানি না এবং কোনটি ব্যবহার শুরু করব তাও জানি না।

এখানেও একই সমস্যা দেখা দেয়। সমাধানটি আরও ভাবার নয়, বরং কাজ করার জন্য:

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

এ সম্পর্কে আরও পড়তে, পড়ার মানসিকতা> চিন্তাভাবনা পড়ুন । লেখক এটি আমার চেয়ে আরও ভাল ব্যাখ্যা করেছেন।

তবে অ্যাপ্লিকেশনটি শেষ করার চাপটি বাড়ছে, এবং আমি অ্যাপটিকে সম্পূর্ণভাবে স্ক্র্যাপ করে আবার শুরু করার কথা ভাবছি considering

যদি না বর্তমান কোডবেস একেবারে অবিস্মরণীয় জগাখিচুড়ি না থাকে; আপনি বিপরীত সিদ্ধান্ত নিচ্ছেন।
বিকাশকারীরা প্রায়শই ভাবেন যে জিনিস ফেলে দেওয়া ভাল পছন্দ। এটি খুব সাধারণ অনুভূতি তবে এটি খুব কমই সঠিক পছন্দ।

কোড নিক্ষেপ করা এবং স্ক্র্যাচ থেকে শুরু করা আপনার কাজ করার পথে ট্র্যাফিক আটকে যাওয়ার মতো, আপনি কাজ করতে দেরি করবেন (এই সময়সীমাটি মিস করবেন), এবং এর পরিবর্তে বাড়ি চালাবেন এবং আবার একই রাস্তায় গাড়ি চালানোর চেষ্টা করবেন। এটা বোঝা যায় না। আপনি ট্র্যাফিক আটকে থাকতে পারেন, তবে আপনি বাড়িতে থাকাকালীন আপনি এখনও কাজের কাছাকাছি রয়েছেন।


9
স্ক্র্যাচ থেকে শুরু করা খুব কমই সঠিক পছন্দ: joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i
মার্টিন বোনার

10
@ মার্টিনবোনার যদিও জোল যে প্রবন্ধের বিষয়ে কথা বলেছেন সেই প্রসঙ্গে অবশ্যই এটি সত্য, যদি আপনি আক্ষরিক অর্থেই প্রথম প্রকল্পে কাজ করেছেন এবং আপনিই একমাত্র ব্যক্তি যিনি এতে কাজ করেছেন, তবে খুব সম্ভব যে আপনি হবেন আরও ভাল কিছু লিখতে সক্ষম। আমার মনে আছে যে আমি প্রথম বিগ-ইশ ব্যক্তিগত প্রকল্পটি আমি পুনরায় লিখেছিলাম এবং এটি সম্ভবত সঠিক সিদ্ধান্ত ছিল - আসল প্রোটোটাইপটি মেরামতের বাইরেও ভেঙে যায়, কারণ আমি যখন লিখতাম তখন আমি জানতাম না।
জেমস_পিক

4
@ ফ্লাটার আমি এখানে একটি লেখা বাদে যা লেখা হয়েছে তার বেশিরভাগের সাথে একমত: আপনি যদি কোনও কাঠামো বেছে নিতে চান এবং সেগুলির কোনও সম্পর্কে আপনি কিছু জানেন না, তবে আপনি কমপক্ষে সেই কাঠামোর গ্রহণের স্তরটি পরীক্ষা করতে পারেন। উদাহরণস্বরূপ, গিথুবে এটির কতটি তারা রয়েছে? কয়টি ইস্যু আছে? কত অবদানকারী? শেষ আপডেট কখন ছিল? এই প্রশ্নের উত্তর অন্তত একটি কাঠামো যার জন্য আপনি সাহায্য পেতে পারেন নির্বাচন সাহায্য, বলছি এটি ভাল জানেন, ইত্যাদি ভাড়া পারে
Jalayn

@ জালেন ওয়ান ধরে নিবে যে কোনও শিক্ষানবিশ যার পূর্বানুমতি নেই তারা শুরু করার জন্য সুপরিচিত কাঠামোয় হোঁচট খাবেন।
ফ্ল্যাটার

3
এটি একটি দুর্দান্ত উত্তর কারণ এটি একটি শৃঙ্খলাবদ্ধ এবং পদ্ধতিগত পদ্ধতির উত্সাহ দেয়। আমি এই জাতীয় পরামর্শের পুরোপুরি প্রশংসা করতে পেরেছিলাম বেশ কয়েক বছর আগে!
কাশীরাজা

18

অন্যথায় আপনাকে বোঝাতে বিপুল পরিমাণ অর্থ সত্ত্বেও ফেসবুক এবং গুগল বিপণনে প্রবেশ করেছে, প্রথম প্রান্তের কাঠামো দুটি প্রাথমিক কারণে রয়েছে:

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

আপনার অ্যাপ্লিকেশন সহজাতভাবে রাষ্ট্রীয় হলে এই সমস্যাগুলির সমাধানের জন্য আপনার কেবলমাত্র একটি কাঠামোর দিকে পৌঁছানো দরকার, আপনি যদি ক্লায়েন্টের পক্ষে সংরক্ষণ করছেন এমন অ্যাপ্লিকেশন রাষ্ট্রের পরিমাণটি বেশ জটিল, যদি আপনি খারাপ নেটওয়ার্কের বিলম্বিতা (মোবাইল, বা সার্ভার থেকে দূরে), বা যদি শক্তিশালী ব্যবসায়ের প্রয়োজন হয় তবে বিশেষত উন্নত সিএসএস বা গতিশীল উপাদান তৈরির সমর্থন করতে হবে।

ফ্রেমওয়ার্ক বিপণন আপনি বিশ্বাস করতে চান যে তাদের বিশেষ স্থাপত্যের পদ্ধতিটি বিকাশের গতি বৃদ্ধি করে এবং রক্ষণাবেক্ষণকে সহজ করে তোলে। এটি সহজ প্রকল্পগুলিতে কাজ করা ছোট দলগুলির পক্ষে স্পষ্টত অসত্য। কোড বিচ্ছিন্ন করা এবং আমদানিগুলি সংগঠিত করা কোনও বড় দলকে আরও দ্রুত পণ্য বাজারে আনতে সহায়তা করতে পারে। এটি ইতিমধ্যে কার্যকরী প্রকল্পে কাজ করা একক ব্যক্তি বিকাশকারী দলের পক্ষে অনেক কম সরবরাহ করে।

আপনি প্রকৃত বৈশিষ্ট্যগুলি বাস্তবায়নের চেয়ে কাঠামোর মধ্যে বিদ্যমান, কার্যকরী কোড কীভাবে ফিট করবেন তা শিখতে আপনি আরও বেশি সময় ব্যয় করবেন এবং সম্ভাবনা খুব ভাল যে কেউ কোথাও কোনও কিছু আপডেট করবে এবং ফ্রেমওয়ার্কে লিখিত কোডটি 18 মাসের মধ্যে কাজ করা বন্ধ করবে যদি না এটিকে বজায় রাখতে কেউ আছেন is

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

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

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

আপনার আজকের কোনও নির্দিষ্ট স্থাপত্য সমস্যার সমাধান না করে বা শীঘ্রই প্রত্যাশা না করা অবধি কোনও কাঠামো অবলম্বন করবেন না এবং যদি সেই সমস্যাটি স্থায়ী হয় তবে তার পরিবর্তে অন্য কোনও উপায়ে এই উদ্বেগের সমাধানের জন্য দৃ strongly়তার সাথে বিবেচনা করুন।


2
আমি যখন "কাঠামো" মনে করি তখন আমি jQuery বা কৌণিক বা প্রতিক্রিয়ার মতো জিনিসগুলি মনে করি যেখানে এটি নিজেকে বাস্তবায়িত করতে বিরক্তিকর হতে পারে এমন জিনিসগুলির জন্য প্রচুর বিল্ডিং ব্লক সরবরাহ করে (এবং প্রায়শই সঠিকভাবে এবং ক্রস-ব্রাউজারের সাথে সামঞ্জস্যপূর্ণ কার্যকর)।
ফ্লফি

@ ফ্লাফি, বিশেষত, আপনার কি মনে হয় যে আপনার জন্য কৌণিক বা প্রতিক্রিয়াটি এমন কি যা নন-মোবাইল ব্রাউজারগুলিতে ভ্যানিলা জেএস বা জিকুয়েরিতে একই জিনিস করার চেয়ে উল্লেখযোগ্যভাবে সহজ? এফএফ / ক্রোম / এজের ডাব্লু / ও শিমগুলিতে পুরোপুরি কার্যকর, ছোট অ্যাপ্লিকেশনগুলি তৈরি করতে পর্যাপ্ত সাধারণ পৃষ্ঠতল ক্ষেত্রের চেয়ে বেশি রয়েছে have
আয়রন গ্রিমলিন

3
@ আয়রনগ্র্যামলিন আপনি কি মজা করছেন? আপনি কি কখনও দ্বিমুখী ডেটা বাঁধাই বা কৌনিক / ভ্যু / যে কোনও টেম্পলেট ব্যবহার করেছেন? অ্যাপ্লিকেশনগুলির জন্য যেখানে এই বৈশিষ্ট্যগুলি কার্যকর সেগুলি একটি বিশাল সরলীকরণ এবং আপনাকে ভঙ্গুর ইভেন্ট-ভিত্তিক কোড থেকে মুক্তি দেয়। এরপরে, সিপিইউ। অবশ্যই, জেএস ফ্রেমওয়ার্ক ব্যবহার করা সাধারণত সার্ভার থেকে কিছুটা লোড নেয়, তবে এটি নিখুঁতভাবে একটি বাই-পণ্য এবং আপনি বলেন যে এটি তাদের জন্য প্রধান কারণ। এর পরে, "সরল আর্কিটেকচার (...) এই প্রকল্পের জন্য আরও ভাল ফিট মনে হচ্ছে"। ওয়েল, এটি প্রকল্পের সম্পর্কে আমরা যত কম জানি তা প্রদত্ত, এটি একটি সুদূরপ্রসারী বিবৃতি।
ফ্রেক্স

2
আমি বলতে চাইছি, আপনি বলেছেন যে আপনার মূল বিষয়টি "সবকিছুর একটি 'সমৃদ্ধ জেএস অ্যাপ্লিকেশন' হওয়া বা হওয়া উচিত নয়"। আমি এই বিষয়টির সাথে একমত তবে আমি মনে করি আপনার উত্তরটি এটি সঠিকভাবে জানাতে ব্যর্থ হয়েছে - আপনি এটি সম্পাদনা করলে এটি আরও ভাল।
ফ্রেक्स

1
আমি কখনই সিএসইউকে ক্লায়েন্টে জেএস ব্যবহারের কারণ হিসাবে অফলোড করার কথা শুনিনি - আমি বলব যে ক্লায়েন্টের উপর জেএস ব্যবহারের historicalতিহাসিক ধারাটি কেবল এটিই প্রস্তাব দেয় (আমি এটি (এক, ওভার্রাইডিং) কারণ বলছি না) এবং বেড়েছে বলে মনে হয়েছিল যখন থেকে jQuery ব্রাউজারের অসঙ্গতিগুলির গর্ডিয়ান নট দিয়ে টুকরো টুকরো টুকরো টুকরো টুকরো করে।
রাডারবাব

7

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

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

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

আপনি এখন যে জগাখিচুড়ি ব্যবহার করেছেন তা আপনি আসেন নি তবে আপনি কোথায় ব্যবহার করেছেন (সম্ভবত বেশিরভাগ জায়গায় ব্যাক-এন্ডে) on আপনার পৃষ্ঠায় রেন্ডারকারী কোডটি কখনই যে ডেটা উপস্থাপন করে তা কখনই না আনলে আপনি কতটা ভাল হবেন।

মনে করুন আপনি কোনও পৃষ্ঠায় কিছুটা ছোট উইজেট যুক্ত করতে চান যার জন্য সঠিকভাবে কাজ করার জন্য অতিরিক্ত স্ক্রিপ্ট এবং সংস্থান প্রয়োজন। আপনি যদি কোনও কাঠামো ব্যবহার করছেন, আপনি জিজ্ঞাসা করতে পারেন "কীভাবে আমি এই জিনিসটির জন্য একটি পৃষ্ঠায় নির্ভরতা যুক্ত করতে চাই?" যদি আপনি না হন, তবে প্রশ্নটি আরও উন্মুক্ত: "আমি কোন প্রযুক্তিগত উদ্বেগকে স্পর্শ করছি যা কোনওভাবে আলাদা হওয়া উচিত?" এই প্রশ্নের উত্তর দিতে আরও অভিজ্ঞতা লাগে, তবে এখানে কয়েকটি ইঙ্গিত রয়েছে:

  • আগামীকাল যদি আপনি আপনার সমস্ত স্থিতিশীল সংস্থানগুলি (স্ক্রিপ্টস, চিত্রগুলি ইত্যাদি) একটি পৃথক সার্ভার, সামগ্রী বিতরণ নেটওয়ার্ক ইত্যাদিতে স্থানান্তরিত করেন বা পারফরম্যান্সের উন্নতি করতে সেগুলি একত্রে প্যাকেজ করার চেষ্টা শুরু করেন তবে কী হবে?
  • আপনি যদি এই পৃষ্ঠাটিতে বিভিন্ন পৃষ্ঠাতে বা একাধিক উদাহরণ একই পৃষ্ঠায় স্থাপন করা শুরু করেন তবে কী হবে?
  • আপনি কীভাবে উইজেটের বিভিন্ন সংস্করণে এবি টেস্টিং শুরু করতে পারেন?

এই কোন অপ্রতিরোধ্য যদি মনে হয়, তারপর আমি সুপারিশ করছি আপনি উচিত আপনার অ্যাপ অনুরোধে কিন্তু আপনার নিজের ব্যক্তিগত বৃদ্ধি অনুরোধে জন্য এত এখন জন্য একটি কাঠামো ব্যবহার। অগত্যা যদিও শুরু করবেন না। পরিবর্তে আপনার অ্যাপ্লিকেশনটির বিবর্তনকে গাইড করতে পাঠ্যক্রম হিসাবে ফ্রেমওয়ার্কগুলি ব্যবহার করুন।

শেখার দুটি উপায় আছে। একটি হচ্ছে পরীক্ষা এবং ত্রুটি দ্বারা, এবং অন্যটি অন্যের অভিজ্ঞতা থেকে শেখার দ্বারা। বিচার ও ত্রুটি দূর করা যায় না। সফটওয়্যার ডেভলপমেন্ট হ'ল স্বভাবতই একটানা শেখার ক্ষেত্র এবং এমন কোনও কোড যা নতুন বা আলাদা কিছু করে না তা হ'ল সংজ্ঞায়িত by (পরিবর্তে ইতিমধ্যে লিখিত কোডটি ব্যবহার করুন))

কৌশলটি হ'ল বিকাশ প্রক্রিয়াটির প্রতিটি ধাপ জুড়ে প্রাক-বিদ্যমান জ্ঞান (কৌশল, সর্বোত্তম অনুশীলনগুলি এবং কোড / লাইব্রেরি / ফ্রেমওয়ার্ক) সক্রিয়ভাবে অনুসন্ধানের মাধ্যমে এটি হ্রাস করা যাতে আপনি নিজেকে নিয়মিত চাকাটি পুনরায় আবিষ্কার করতে না পান।

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

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


5

সব অন্য সর্বোপরি, "জিনিস তুলে দিতে এবং উপর শুরু" হয় না একটি বিকল্প ... সব পরে, আপনি বলেন নি আপনি আছেন তারা "একটি হাফ ডজন ক্লায়েন্টদের?" আপনি যদি এখনো বিবেচনা কি বিরতি দেওয়া হয়েছে তারা আপনার রায় এর মনে হতে পারে, দেওয়া যে, তারা এখনই (সম্ভবত) হল "পুরোপুরি আপনার কাজ নিয়ে খুশি ?!"

এখানে একটি উপমা যা আমি ব্যবহার করতে চাই:

  • "আমার কাজ হ'ল লোকদের বসবাসের জন্য ঘর তৈরি করা, লোকেরা ব্যবসা তৈরি করা এবং আরও অনেক কিছু।" আমার কাজ হ'ল দরকারী কাজগুলি করার জন্য "এই অসম্ভব ক্ষুদ্র, অতি-গৌরবময় বালির বাল" make (ঠিক যেমন গৃহ-নির্মাতারা জিপসামের ওয়ালবোর্ড, সিরামিক টালি, কংক্রিট ব্লক এবং 2x4 এর ঘর থেকে কারুকাজ করেছেন))

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

  • "তবুও, প্রতিটি বাড়ি, একবার নির্মিত, চিরকালের জন্য বাস করবে " " আপনি তাদের উচ্ছেদ করতে পারবেন না। একবার আপনি এটি তৈরি করে কীগুলি হস্তান্তর করলে, "এটি আর আপনার 'বাড়ি নয়" " এটি এখনই এটি ঠিক তাই এবং এটি খুব দীর্ঘ সময়ের জন্য দাঁড়িয়ে থাকবে।

এই দিনগুলিতে আমার ব্যবসায়ের একটি বড় অংশ হ'ল দশ, বিশ, তিরিশ বা ততোধিক বছর আগে নির্মিত সফটওয়্যারগুলির সাথে মোকাবিলা করতে ক্লায়েন্টদের সহায়তা করা, সেই দিনগুলিতে বিদ্যমান "শিল্পের রাজ্য" প্রযুক্তি ব্যবহার করে - (এবং যা আহেম, আমার মনে আছে) - এবং যা আজও সেবায় (!) রয়েছে।


3

কিছু নিশ্চিত করা ভবিষ্যতের প্রমাণ প্রায় অসম্ভব। অ্যাপ্লিকেশনটি স্কেলযোগ্যযোগ্য তা পরীক্ষা করা খুব বেশি কঠিন নয়। আপনাকে কেবল অ্যাপটির জন্য কিছু কার্য সম্পাদন পরীক্ষা লিখতে হবে এবং এটি কত ক্লায়েন্ট পরিচালনা করতে পারে তা দেখতে হবে। পরীক্ষার লিখনগুলি অবশ্যই আপনার অ্যাপটিকে আরও ভবিষ্যতের প্রমাণ হিসাবে তৈরি করবে কারণ আপনি আরও পরিবর্তনগুলি প্রয়োগ করার পরে অ্যাপটি কীভাবে আচরণ করে তা আপনি মাপতে সক্ষম হবেন।

আরআরটি ফ্রেমওয়ার্ক, আমি খুব বেশি চিন্তিত পারফরম্যান্স / স্কেলাবিলিটি বুদ্ধিমান হব না। এটি এমন কিছু যা আপনি সহজেই পরীক্ষা করতে পারেন এবং সম্ভবত এটি ঠিক করতে পারেন। বড় সমস্যাটি হচ্ছে সুরক্ষা। ওয়েব ফ্রেমওয়ার্কগুলি আপনাকে যথাযথ প্রমাণীকরণ কোড, কুকিজ, সিএসআরএফ সুরক্ষা ইত্যাদি লিখতে সহায়তা করে Especially


3

আমি ফ্রেমওয়ার্কগুলি শেখার বিষয়ে একটি মন্তব্য লিখতে শুরু করেছিলাম, তবে শেষ পর্যন্ত এটি কোনও উত্তরের মতো দেখতে কিছুতে পরিণত হয়েছিল, তাই এটি এখানে।

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

আপনার প্রথম ফ্রেমওয়ার্কগুলি জানার মূল বিষয়টি হ'ল একটি সাধারণ ভাষা শেখা, সম্ভবত আপনার সমবয়সীদের মধ্যে জনপ্রিয় কিছু শেখার চেষ্টা করুন। আপনি কোনও ফ্রেমওয়ার্কে রচিত কিছু সাধারণ প্রকল্পে পরিবর্তন করার চেষ্টা করতে পারেন। আপনি জানেন না এমন ফ্রেমওয়ার্কে স্ক্র্যাচ থেকে একটি প্রকল্প শুরু করা শেখার একটি খুব অকার্যকর উপায়।

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


2

এই নিবন্ধটি 2.5 বছর আগে হ্যাকার নিউজটিতে খুব মনোযোগ পেয়েছিল: এমন কোড লিখুন যা মুছতে সহজ, প্রসারিত করা সহজ নয়। এই দৃষ্টিভঙ্গি আপনাকে আপনার বর্তমান কোডবেস মোকাবেলায় সহায়তা করতে পারে বা নাও পারে তবে ভবিষ্যতে এটি নিখুঁততা / ওভার ইঞ্জিনিয়ারিং থেকে আসা হতাশা রোধ করতে সহায়তা করতে পারে।

যদি আমরা 'লাইনের ব্যয়িত' হিসাবে কোডের লাইনগুলি দেখতে পাই, তবে আমরা যখন কোডের লাইনগুলি মুছব তখন আমরা রক্ষণাবেক্ষণের ব্যয় কমিয়ে দিচ্ছি। পুনরায় ব্যবহারযোগ্য সফ্টওয়্যার তৈরির পরিবর্তে, আমাদের ডিসপোজেবল সফ্টওয়্যার তৈরি করার চেষ্টা করা উচিত।

আমার আপনাকে বলার দরকার নেই যে কোডটি মুছে ফেলার চেয়ে এটি মজাদার।

(জোর আমার)

উপর হ্যাকার সংবাদ নিবন্ধের থ্রেড একটি পঠিত মূল্য হতে পারে।


-1

যতদূর এটিকে ভবিষ্যতের প্রমাণ হিসাবে প্রমাণ করা এবং স্কেল ও ফ্রেমওয়ার্ক নীতিগুলি প্রয়োগ করা, এটি নিজের দ্বারা গ্রহণ করা একটি দীর্ঘ কাজ, আমি সম্ভবত এটি সম্পর্কে উদ্বিগ্ন নই, তবে আপনার যদি অবশ্যই আবশ্যক:

আপনার কোডটি পরিষ্কার রাখুন, সলিড, ডিআরআই নীতিগুলি> গুগল অনুসরণ করুন।

যত তাড়াতাড়ি সম্ভব লোড-ব্যালেন্সার প্রয়োগ করুন।

কমপক্ষে দুটি ওয়েব সার্ভার উঠে দাঁড়ান, কোডটিতে লোড ভারসাম্যকর পরিস্থিতি পরিচালনা করুন।

এবং সর্বশেষে তবে কম নয়, এলএএমপি-র চেয়ে মিলিয়ন ব্যবহারকারীকে পরিচালনা করার জন্য আরও ভাল স্ট্যাক রয়েছে তবে আমি নিশ্চিত যে এটি সম্পূর্ণরূপে কার্যকর।

কেস এবং পয়েন্ট, দেখুন: https://stackoverflow.com/questions/1276/how-big-can-a-mysql-datedia-get-before-performance-starts-to-derad বিন্দুটি বৈধ, তবে 10 জিবি তুচ্ছ একটি পরীক্ষার বিষয় হিসাবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.