আমি যে পার্শ্ব প্রকল্পে কাজ করছি তার জন্য ধারণা পর্বের একটি প্রোটোটাইপিং / প্রমাণের সমাপ্তির কাছাকাছি এসেছি এবং আরও কিছু বৃহত্তর স্কেল অ্যাপ্লিকেশন ডিজাইনের সিদ্ধান্ত নেওয়ার চেষ্টা করছি trying অ্যাপ্লিকেশনটি একটি প্রজেক্ট ম্যানেজমেন্ট সিস্টেম যা চতুর বিকাশ প্রক্রিয়াটির দিকে আরও উপযুক্ত করে তোলে। আমার যে সিদ্ধান্ত নিতে হবে তার মধ্যে একটি হ'ল .তিহ্যবাহী মাল্টি-পেজ অ্যাপ্লিকেশন বা একক পৃষ্ঠার অ্যাপ্লিকেশন নিয়ে যাওয়া বা না করা।
বর্তমানে আমার প্রোটোটাইপটি একটি traditionalতিহ্যবাহী মাল্টি-পেজ সেটআপ, তবে আমি আমার জাভাস্ক্রিপ্ট (jQuery) কোডটিতে কিছু কাঠামো পরিষ্কার করতে এবং প্রয়োগ করতে ব্যাকবোন.জেএস-এর দিকে তাকিয়ে আছি। ব্যাকবোন.জগুলি মাল্টি-পেজ অ্যাপ্লিকেশনগুলিতে ব্যবহার করা যেতে পারে বলে মনে হয়, এটি একক পৃষ্ঠাগুলির অ্যাপ্লিকেশনগুলির সাথে আরও জ্বলজ্বল করে। আমি একক পৃষ্ঠার অ্যাপ্লিকেশন ডিজাইনের পদ্ধতির ব্যবহারের সুবিধাগুলি এবং অসুবিধার একটি তালিকা নিয়ে আসতে চেষ্টা করছি। এখন পর্যন্ত আমার কাছে রয়েছে:
সুবিধাদি
সমস্ত ডেটা কিছু প্রকারের API এর মাধ্যমে উপলব্ধ থাকতে হবে - এটি আমার ব্যবহারের ক্ষেত্রে একটি বড় সুবিধা কারণ আমি যেভাবেই আমার অ্যাপ্লিকেশনটিতে একটি API রাখতে চাই। এখনই আমার প্রায় 60-70% ডেটা পেতে / আপডেট করার কলগুলি একটি REST এপিআই এর মাধ্যমে করা হয়। একক পৃষ্ঠার অ্যাপ্লিকেশনটি করা আমাকে আমার আরএসটি এপিআই আরও ভালভাবে পরীক্ষা করার অনুমতি দেবে কারণ অ্যাপ্লিকেশন নিজেই এটি ব্যবহার করবে। এর অর্থ হ'ল অ্যাপ্লিকেশনটি বাড়ার সাথে সাথে এপিআই নিজেই বাড়বে যেহেতু অ্যাপ্লিকেশন এটি ব্যবহার করে; অ্যাপ্লিকেশনটিতে অ্যাড-অন হিসাবে API বজায় রাখার দরকার নেই।
আরও প্রতিক্রিয়াশীল অ্যাপ্লিকেশন - যেহেতু প্রাথমিক পৃষ্ঠার পরে লোড হওয়া সমস্ত ডেটা ন্যূনতমতে রাখা হয় এবং একটি কমপ্যাক্ট ফর্ম্যাটে (জেএসএন এর মতো) সঞ্চারিত হয়, তাই ডেটা অনুরোধগুলি সাধারণত দ্রুত হওয়া উচিত এবং সার্ভারটি কিছুটা কম প্রক্রিয়াজাতকরণ করবে।
অসুবিধেও
- কোডের সদৃশ - উদাহরণস্বরূপ, মডেল কোড। আমি উভয় সার্ভার সাইডে মডেল তৈরি করতে যাচ্ছি (এই ক্ষেত্রে পিএইচপি) এবং জাভাস্ক্রিপ্টে ক্লায়েন্ট পাশ।
- জাভাস্ক্রিপ্টে ব্যবসায়িক যুক্তি - এটি কেন খারাপ হবে তার কোনও ठोस উদাহরণ আমি দিতে পারি না তবে জাভাস্ক্রিপ্টে ব্যবসায়িক যুক্তি থাকা যে আমার যে কেউ পড়তে পারে তা ঠিক মনে হয় না।
- জাভাস্ক্রিপ্ট মেমরি ফাঁস - যেহেতু পৃষ্ঠাটি কখনই পুনরায় লোড হয় না, জাভাস্ক্রিপ্ট মেমরির ফাঁস ঘটতে পারে এবং সেগুলি ডিবাগ করতে শুরু করব তাও আমি জানতাম না।
এছাড়াও অন্যান্য জিনিস যা ধরণের দ্বৈত তরোয়াল রয়েছে। উদাহরণস্বরূপ, একক পৃষ্ঠার অ্যাপ্লিকেশনগুলির সাথে, প্রতিটি অনুরোধের জন্য প্রক্রিয়াকৃত ডেটা অনেক কম হতে পারে যেহেতু অ্যাপ্লিকেশনটি নির্দিষ্ট অনুরোধের জন্য প্রয়োজনীয় ন্যূনতম ডেটা জিজ্ঞাসা করবে, তবে এর অর্থ এটি আরও অনেক ছোট অনুরোধ হতে পারে সার্ভার. আমি নিশ্চিত না যে এটি কোনও ভাল বা খারাপ জিনিস কিনা।
একক পৃষ্ঠার ওয়েব অ্যাপ্লিকেশনগুলির কিছু সুবিধা এবং অসুবিধাগুলি কী যা আমার প্রকল্পের জন্য কোন পথে যেতে হবে তা সিদ্ধান্ত নেওয়ার সময় আমার মনে রাখা উচিত?