যখন আমি প্রথম পিএইচপি শিখতে শুরু করেছি (প্রায় 5 বা 6 বছর আগে) আমি আজাক্স সম্পর্কে শিখেছি এবং আমি "পর্যায়ক্রমে" পেরিয়েছি:
- আপনার সার্ভারটি এইচটিএমএল ডেটা প্রত্যাবর্তন করে এবং আপনি এটিকে একটি ডিওএমের অভ্যন্তরীণ এইচটিএমএল এর মধ্যে রেখে দেন
- আপনি এক্সএমএলের মতো ডেটা ট্রান্সফার ফর্ম্যাটগুলি সম্পর্কে শিখুন (এবং "ওহো তাই বলুন যা এর জন্য ব্যবহার করা হয়) এবং তারপরে জেএসওএন।
- আপনি JSON ফেরত যান এবং ভ্যানিলা জাভাস্ক্রিপ্ট কোড ব্যবহার করে আপনার ইউআই তৈরি করেন
- আপনি jQuery এ যান
- আপনি এপিআই, শিরোলেখ, এইচটিটিপি স্থিতি কোড, REST , CORS এবং বুটস্ট্র্যাপ সম্পর্কে শিখুন
- আপনি এসপিএ এবং ফ্রন্টএন্ড ফ্রেমওয়ার্কগুলি ( প্রতিক্রিয়া , Vue.js , এবং AngularJS ) এবং JSON API স্ট্যান্ডার্ড শিখুন ।
- আপনি কিছু এন্টারপ্রাইজ লিগ্যাসি কোড পেয়েছেন এবং এটি পরিদর্শন করার পরে, খুঁজে নিন যে তারা প্রথম ধাপে বর্ণিত হয়েছে do
আমি যেমন এই লিগ্যাসি কোডবেস নিয়ে কাজ করেছি, আমি এমনকি এটিও এইচটিএমএল ফিরিয়ে আনতে পারে তা বিবেচনা করি নি (মানে আমরা এখন পেশাদার, ডান?) Ajax কল পপুলেট। আমি "প্রোগ্রামারকে" জিজ্ঞাসা না করেই তিনি আমাকে জানান যে এটি HTML ফিরিয়ে দিচ্ছে এবং সরাসরি ডর্মের সাথে ইনটারএইচটিএমএল যুক্ত করা হবে।
অবশ্যই, এটি গ্রহণ করা কঠিন ছিল। আমি এটিকে জেএসএন এন্ডপয়েন্টগুলিতে রিফ্যাক্টর করার উপায়গুলি ভাবতে শুরু করেছিলাম, শেষের স্থানগুলি ইউনিট পরীক্ষা করার বিষয়ে চিন্তাভাবনা করি। তবে এই কোডবেসের কোনও পরীক্ষা নেই। একটিও নয়। এবং এটি 200k লাইনেরও বেশি। অবশ্যই আমার একটি কাজের মধ্যে পুরো জিনিসটি পরীক্ষার জন্য পদ্ধতির প্রস্তাব দেওয়ার অন্তর্ভুক্ত রয়েছে, তবে এই মুহুর্তে আমরা এখনও এটি মোকাবেলা করছি না।
সুতরাং আমি কোথাও নেই, এক কোণে অবাক হয়ে ভাবছি: যদি আমাদের যা কিছু পরীক্ষা না করে থাকে, তাই আমাদের এই জেএসএন শেষ পয়েন্টটি তৈরি করার কোনও বিশেষ কারণ নেই (যেহেতু এটি "পুনরায় ব্যবহারযোগ্য" নয়: এটি আক্ষরিক অর্থে ডেটা ফেরত দেয় যা কেবলমাত্র সেই অংশের সাথে খাপ খায়) অ্যাপ্লিকেশন, তবে আমি মনে করি এটি ইতিমধ্যে জড়িত ছিল কারণ এটি ... এইচটিএমএল ডেটা ফেরায়)।
কি ঠিক এই কাজ কি ভুল আছে?