𝗙𝗿𝗼𝗻𝘁𝗲𝗻𝗱 𝗜𝘀 𝗘𝗮𝘀𝘆… 𝗨𝗻𝘁𝗶𝗹 𝗬𝗼𝘂 𝗔𝗰𝘁𝘂𝗮𝗹𝗹𝘆 𝗕𝘂𝗶𝗹𝗱 𝗦𝗼𝗺𝗲𝘁𝗵𝗶𝗻𝗴
ਲੋਕ ਸੋਚਦੇ ਹਨ ਕਿ ਫਰੰਟਐਂਡ ਡਿਵੈਲਪਮੈਂਟ ਆਸਾਨ ਹੈ।
ਉਹ ਅਜਿਹੀਆਂ ਗੱਲਾਂ ਕਹਿੰਦੇ ਹਨ:
- ਇਹ ਸਿਰਫ਼ ਇੱਕ ਸਕ੍ਰੀਨ ਹੈ।
- ਬੈਕਐਂਡ ਅਸਲ ਕੰਮ ਕਰਦਾ ਹੈ।
- AI ਇਹ ਬਣਾ ਸਕਦਾ ਹੈ।
- ਬੱਸ ਇੱਕ ਕੰਪੋਨੈਂਟ ਲਾਇਬ੍ਰੇਰੀ ਦੀ ਵਰਤੋਂ ਕਰੋ।
- ਇਹ ਸਿਰਫ਼ ਇੱਕ ਚੈੱਕਬਾਕਸ ਹੈ।
ਹਰ ਫਰੰਟਐਂਡ ਡਿਵੈਲਪਰ ਜਾਣਦਾ ਹੈ ਕਿ ਇਹ ਕਹਾਣੀਆਂ ਕਿਵੇਂ ਖਤਮ ਹੁੰਦੀਆਂ ਹਨ। ਇੱਕ ਸਧਾਰਨ ਚੈੱਕਬਾਕਸ ਤੁਹਾਡਾ ਸਾਰਾ ਹਫ਼ਤਾ ਬਰਬਾਦ ਕਰ ਸਕਦਾ ਹੈ।
ਮੈਂ ਇਹ ਆਪਣੀ ਪਿਛਲੀ ਨੌਕਰੀ ਵਿੱਚ ਬਹੁਤ ਮੁਸ਼ਕਲ ਨਾਲ ਸਿੱਖਿਆ। ਅਸੀਂ ਇੱਕ ਆਡਿਟਿੰਗ ਫਰਮ ਲਈ ਇੱਕ ਪਲੇਟਫਾਰਮ ਬਣਾਇਆ ਸੀ। ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਮੈਨੇਜਰ ਨੇ ਡੈਸ਼ਬੋਰਡ 'ਤੇ ਇੱਕ ਚੈੱਕਬਾਕਸ ਦੀ ਮੰਗ ਕੀਤੀ। ਉਸਨੇ ਕਿਹਾ ਕਿ ਇਸ ਵਿੱਚ ਦੋ ਘੰਟੇ ਲੱਗਣਗੇ। ਉਸਨੇ ਇਸਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਮੈਨੂੰ ਪੂਰਾ ਇੱਕ ਦਿਨ ਵੀ ਦਿੱਤਾ।
ਮੈਨੂੰ ਲੱਗਿਆ ਕਿ ਉਹ ਉਦਾਰਤਾ ਦਿਖਾ ਰਹੀ ਸੀ। ਮੈਂ ਗਲਤ ਸੀ।
ਚੈੱਕਬਾਕਸ ਕੋਈ ਸਧਾਰਨ UI ਐਲੀਮੈਂਟ ਨਹੀਂ ਸੀ। ਇਸਦੇ ਸਖ਼ਤ ਨਿਯਮ ਸਨ:
- ਇਹ ਸਿਰਫ਼ ਖਾਸ ਕਿਸਮ ਦੇ ਕਲਾਇੰਟਾਂ ਲਈ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ।
- ਇਹ ਸਿਰਫ਼ ਉਦੋਂ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ ਜੇਕਰ ਪ੍ਰੋਜੈਕਟ ਰੈਵੇਨਿਊ (revenue) ਦੀ ਇੱਕ ਸੀਮਾ ਨੂੰ ਪੂਰਾ ਕਰਦਾ ਹੈ।
- ਇਹ ਸਿਰਫ਼ ਉਦੋਂ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ ਜੇਕਰ ਪ੍ਰੋਜੈਕਟ ਐਕਟਿਵ ਹੈ।
- ਇਹ ਸਿਰਫ਼ ਉਦੋਂ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ ਜੇਕਰ ਕੰਸਲਟੈਂਟ ਪ੍ਰੋਜੈਕਟ ਦਾ ਮਾਲਕ ਹੈ।
ਫਿਰ ਲੌਜਿਕ ਵਧਦਾ ਗਿਆ। ਚੈੱਕਬਾਕਸ ਨੂੰ ਚੈੱਕ ਕਰਨ ਨਾਲ ਇੱਕ ਰਿਕਵੈਸਟ ਟ੍ਰਿਗਰ ਹੋ ਗਈ। ਉਸ ਰਿਕਵੈਸਟ ਲਈ ਮੈਨੇਜਰ ਦੀ ਮਨਜ਼ੂਰੀ ਦੀ ਲੋੜ ਸੀ। ਇਸ ਲਈ ਲੋੜ ਸੀ:
- ਨਵੇਂ API endpoints।
- ਗੁੰਝਲਦਾਰ approval workflows।
- Error handling ਅਤੇ loading states।
- ਨਵੇਂ notification systems।
ਹਾਲਤ ਹੋਰ ਵੀ ਖਰਾਬ ਹੋ ਗਈ। ਮੈਨੇਜਰ ਨਹੀਂ ਚਾਹੁੰਦੇ ਸਨ ਕਿ ਰਿਕਵੈਸਟਾਂ ਖਾਲੀ ਬੈਠੀਆਂ ਰਹਿਣ। ਜੇਕਰ ਮੈਨੇਜਰ ਆਨਲਾਈਨ ਨਹੀਂ ਹੁੰਦਾ ਸੀ, ਤਾਂ ਚੈੱਕਬਾਕਸ ਨੂੰ ਲੁਕਾਉਣਾ ਪੈਂਦਾ ਸੀ। ਸਾਨੂੰ real-time presence tracking ਲਾਗੂ ਕਰਨੀ ਪਈ।
ਅਚਾਨਕ, ਅਸੀਂ ਇਹ ਸਭ ਸੰਭਾਲ ਰਹੇ ਸੀ:
- Database models।
- Socket connections।
- Real-time data synchronization।
- Race conditions।
ਅਸੀਂ ਇੱਕ ਚੈੱਕਬਾਕਸ 'ਤੇ ਤੜ੍ਹੇ ਤੀਹ ਘੰਟੇ ਬਿਤਾਏ।
ਅਸੀਂ ਇੱਕ ਡੱਬਾ ਬਣਾਉਣ ਵਿੱਚ ਤੜ੍ਹੇ ਤੀਹ ਘੰਟੇ ਨਹੀਂ ਬਿਤਾਏ। ਅਸੀਂ ਬਿਜ਼ਨਸ ਨਿਯਮਾਂ ਨੂੰ ਕੋਡ ਵਿੱਚ ਬਦਲਣ ਵਿੱਚ ਤੜ੍ਹੇ ਤੀਹ ਘੰਟੇ ਬਿਤਾਏ।
ਫਰੰਟਐਂਡ ਦੀ ਗੁੰਝਲਤਾ ਮਨੁੱਖੀ ਲੋੜਾਂ ਤੋਂ ਆਉਂਦੀ ਹੈ। ਤੁਹਾਨੂੰ ਇਹਨਾਂ ਚੀਜ਼ਾਂ ਦਾ ਹੱਲ ਕਰਨਾ ਪੈਂਦਾ ਹੈ:
- Offline users।
- ਇੱਕੋ ਸਮੇਂ ਹੋਣ ਵਾਲੇ ਕਲਿੱਕਸ (simultaneous clicks)।
- ਪਰਮਿਸ਼ਨਾਂ ਵਿੱਚ ਬਦਲਾਅ।
- ਸੁਸਤ API responses।
- Disconnected sockets।
ShadCN ਵਰਗੀਆਂ ਕੰਪੋਨੈਂਟ ਲਾਇਬ੍ਰੇਰੀਆਂ ਵਧੀਆ ਹਨ। Layouts ਲਈ AI ਮਦਦਗਾਰ ਹੈ। ਪਰ ਉਹ ਬਿਜ਼ਨਸ ਦੀਆਂ ਸਮੱਸਿਆਵਾਂ ਨੂੰ ਹੱਲ ਨਹੀਂ ਕਰਦੇ। ਇੱਕ ਲਾਇਬ੍ਰੇਰੀ ਤੁਹਾਨੂੰ ਇੱਕ ਚੈੱਕਬਾਕਸ ਦਿੰਦੀ ਹੈ। ਇਹ ਤੁਹਾਨੂੰ ਇਹ ਨਹੀਂ ਦੱਸਦੀ ਕਿ ਇਸਨੂੰ ਕੌਣ ਦੇਖਦਾ ਹੈ ਜਾਂ ਮਨਜ਼ੂਰੀ ਕਿਵੇਂ ਮਿਲਦੀ ਹੈ।
ਮੁਸ਼ਕਲ ਹਿੱਸਾ ਪਿਕਸਲ (pixels) ਨਹੀਂ ਹੈ। ਮੁਸ਼ਕਲ ਹਿੱਸਾ ਇਹ ਸਮਝਣਾ ਹੈ ਕਿ ਉਸ ਡੱਬੇ ਦਾ ਮਤਲਬ ਕੀ ਹੈ।
ਫਰੰਟਐਂਡ ਮਨੁੱਖੀ ਉਲਝਣਾਂ ਨੂੰ ਅਜਿਹੀ ਚੀਜ਼ ਵਿੱਚ ਬਦਲਣ ਬਾਰੇ ਹੈ ਜਿਸ 'ਤੇ ਲੋਕ ਕਲਿੱਕ ਕਰ ਸਕਣ। ਸਭ ਤੋਂ ਵਧੀਆ ਕੰਮ ਆਸਾਨ ਲੱਗਦਾ ਹੈ ਕਿਉਂਕਿ ਕਿਸੇ ਨੇ ਇਸਨੂੰ ਸਰਲ ਬਣਾਉਣ ਲਈ ਕਈ ਦਿਨ ਲਗਾਏ ਹੁੰਦੇ ਹਨ।
ਤੁਹਾਡੀ "ਸਧਾਰਨ ਚੈੱਕਬਾਕਸ" ਵਾਲੀ ਕਹਾਣੀ ਕੀ ਹੈ?
ਸਰੋਤ: https://dev.to/mdazlaanzubair/frontend-is-easy-until-you-actually-build-something-20fb
