فرنٹ اینڈ آسان ہے... جب تک کہ آپ حقیقت میں کچھ بنائیں نہیں
لوگ سمجھتے ہیں کہ فرنٹ اینڈ ڈویلپمنٹ آسان ہے۔
وہ ایسی باتیں کرتے ہیں جیسے:
- یہ صرف ایک اسکرین ہے۔
- اصل کام بیک اینڈ کرتا ہے۔
- AI یہ بنا سکتا ہے۔
- بس ایک کمپوننٹ لائبریری استعمال کر لیں۔
- یہ تو محض ایک چیک باکس ہے۔
ہر فرنٹ اینڈ ڈویلپر جانتا ہے کہ یہ کہانیاں کیسے ختم ہوتی ہیں۔ ایک سادہ سا چیک باکس آپ کا پورا ہفتہ برباد کر سکتا ہے۔
میں نے اپنی پچھلی ملازمت میں یہ سبق بہت مشکل سے سیکھا۔ ہم نے ایک آڈٹ فرم کے لیے ایک پلیٹ فارم بنایا تھا۔ ایک پروجیکٹ مینیجر نے ڈیش بورڈ پر ایک چیک باکس کا مطالبہ کیا۔ اس نے کہا کہ اس میں دو گھنٹے لگیں گے۔ اس نے مجھے اسے ٹیسٹ کرنے کے لیے پورا ایک دن بھی دیا۔
میں نے سوچا کہ وہ بہت مہربان ہو رہی ہے۔ میں غلط تھا۔
وہ چیک باکس محض ایک سادہ UI عنصر نہیں تھا۔ اس کے کچھ سخت اصول تھے:
- یہ صرف مخصوص کلائنٹ کی اقسام کے لیے ظاہر ہوتا ہے۔
- یہ صرف تب نظر آتا ہے جب پروجیکٹ آمدنی کی ایک حد (revenue threshold) کو پورا کرتا ہو۔
- یہ صرف تب ظاہر ہوتا ہے جب پروجیکٹ ایکٹو ہو۔
- یہ صرف تب نظر آتا ہے جب کنسلٹنٹ پروجیکٹ کا مالک ہو۔
پھر لاجک بڑھتی گئی۔ باکس کو چیک کرنے سے ایک ریکویسٹ (request) ٹرگر ہوتی تھی۔ اس ریکویسٹ کے لیے مینیجر کی منظوری کی ضرورت تھی۔ اس کے لیے درکار تھا:
- نئے API endpoints۔
- پیچیدہ منظوری کے ورک فلو (approval workflows)۔
- ایرر ہینڈلنگ اور لوڈنگ اسٹیٹس۔
- نئے نوٹیفکیشن سسٹم۔
صورتحال مزید خراب ہو گئی۔ مینیجرز نہیں چاہتے تھے کہ ریکویسٹس خالی بیٹھی رہیں۔ اگر مینیجر آن لائن نہ ہو تو چیک باکس کو چھپنا پڑتا تھا۔ ہمیں ریئل ٹائم موجودگی کی ٹریکنگ (real-time presence tracking) نافذ کرنی پڑی۔
اچانک، ہم ان چیزوں کو سنبھال رہے تھے:
- ڈیٹا بیس ماڈلز۔
- ساکٹ کنکشنز (Socket connections)۔
- ریئل ٹائم ڈیٹا سنکرونائزیشن۔
- ریس کنڈیشنز (Race conditions)۔
ہم نے ایک چیک باکس پر تیس گھنٹے صرف کیے۔
ہم نے تیس گھنٹے ایک باکس بنانے میں صرف نہیں کیے تھے۔ ہم نے تیس گھنٹے بزنس رولز کو کوڈ میں تبدیل کرنے میں صرف کیے۔
فرنٹ اینڈ کی پیچیدگی انسانی ضروریات سے پیدا ہوتی ہے۔ آپ کو ان مسائل کا حل نکالنا ہوتا ہے:
- آف لائن صارفین۔
- بیک وقت ہونے والے کلکس۔
- اجازت (permission) میں تبدیلیاں۔
- سست API رسپانسز۔
- ڈس کنیکٹڈ ساکٹس۔
ShadCN جیسی کمپوننٹ لائبریریاں بہترین ہیں۔ لے آؤٹس کے لیے AI مددگار ہے۔ لیکن وہ کاروباری مسائل حل نہیں کرتے۔ ایک لائبریری آپ کو ایک چیک باکس دے دیتی ہے۔ لیکن وہ آپ کو یہ نہیں بتاتی کہ اسے کون دیکھے گا یا منظوری کا عمل (approval flow) کیسے چلے گا۔
مشکل حصہ پکسلز نہیں ہیں۔ مشکل حصہ یہ سمجھنا ہے کہ اس باکس کا مطلب کیا ہے۔
فرنٹ اینڈ انسانی افراتفری کو ایسی چیز میں تبدیل کرنے کا نام ہے جس پر لوگ کلک کر سکیں۔ بہترین کام آسان نظر آتا ہے کیونکہ کسی نے اسے سادہ محسوس کروانے کے لیے کئی دن صرف کیے ہوتے ہیں۔
آپ کی "سادہ چیک باکس" والی کہانی کیا ہے؟
ماخذ: https://dev.to/mdazlaanzubair/frontend-is-easy-until-you-actually-build-something-20fb
