𝗧𝗵𝗲 𝗠𝗼𝗿𝗲 𝗔𝗜 𝗪𝗿𝗶𝘁𝗲𝘀 𝗖𝗼𝗱𝗲, 𝗧𝗵𝗲 𝗠𝗼𝗿𝗲 𝗔𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 𝗠𝗮𝘁𝘁𝗲𝗿𝘀

ਕੋਡ ਲਿਖਣਾ ਸਾਫਟਵੇਅਰ ਡਿਵੈਲਪਮੈਂਟ ਦਾ ਸਭ ਤੋਂ ਔਖਾ ਹਿੱਸਾ ਹੁੰਦਾ ਸੀ।

ਅੱਜ AI ਸਾਰਾ ਭਾਰੀ ਕੰਮ ਸੰਭਾਲ ਲੈਂਦਾ ਹੈ। AI ਫੰਕਸ਼ਨ (functions), APIs, ਯੂਨਿਟ ਟੈਸਟ (unit tests), ਅਤੇ ਡਾਟਾਬੇਸ ਕੁਏਰੀਆਂ (database queries) ਲਿਖਦਾ ਹੈ। ਇਹ ਸਕਿੰਟਾਂ ਵਿੱਚ ਪੂਰੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਬਣਾ ਦਿੰਦਾ ਹੈ।

ਇਹ ਬਦਲਾਅ ਸਭ ਕੁਝ ਬਦਲ ਦਿੰਦਾ ਹੈ।

ਜਿਵੇਂ-ਜਿਵੇਂ ਕੋਡਿੰਗ ਆਸਾਨ ਹੁੰਦੀ ਜਾ ਰਹੀ ਹੈ, ਆਰਕੀਟੈਕਚਰ ਹੋਰ ਵੀ ਮਹੱਤਵਪੂਰਨ ਹੁੰਦਾ ਜਾ ਰਿਹਾ ਹੈ।

ਪਹਿਲਾਂ, ਡਿਵੈਲਪਰ ਬੋਇਲਰਪਲੇਟ (boilerplate) ਅਤੇ ਵਾਰ-ਵਾਰ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਲੌਜਿਕ (repetitive logic) 'ਤੇ ਘੰਟਿਆਂ ਬਿਤਾਉਂਦੇ ਸਨ। ਹੁਣ AI ਇਹ ਕੰਮ ਮਿੰਟਾਂ ਵਿੱਚ ਕਰ ਦਿੰਦਾ ਹੈ। ਇਸ ਨਾਲ ਸਾਫਟਵੇਅਰ ਬਣਾਉਣ ਦੀ ਰੁਕਾਵਟ ਘੱਟ ਜਾਂਦੀ ਹੈ।

ਪਰ ਕੋਡ ਜਨਰੇਟ ਕਰਨ ਅਤੇ ਸਿਸਟਮ ਡਿਜ਼ਾਈਨ ਕਰਨ ਵਿਚਕਾਰ ਇੱਕ ਵੱਡਾ ਫਰਕ ਹੈ।

AI ਇਸ ਸਵਾਲ ਦਾ ਜਵਾਬ ਦਿੰਦਾ ਹੈ: "ਮੈਂ ਇਸਨੂੰ ਕਿਵੇਂ ਬਣਾਵਾਂ?" ਆਰਕੀਟੈਕਚਰ ਇਸ ਸਵਾਲ ਦਾ ਜਵਾਬ ਦਿੰਦਾ ਹੈ: "ਕੀ ਮੈਨੂੰ ਇਸਨੂੰ ਇਸ ਤਰੀਕੇ ਨਾਲ ਬਣਾਉਣਾ ਚਾਹੀਦਾ ਹੈ?"

ਆਰਕੀਟੈਕਚਰ ਵੱਡੀ ਤਸਵੀਰ (big picture) ਨੂੰ ਸੰਭਾਲਦਾ ਹੈ: • Scalability (ਸਕੇਲੇਬਿਲਟੀ) • Reliability (ਭਰੋਸੇਯੋਗਤਾ) • Maintainability (ਰੱਖ-ਰਖਾਅ ਦੀ ਯੋਗਤਾ) • Security (ਸੁਰੱਖਿਆ) • Future growth (ਭਵਿੱਖ ਦਾ ਵਿਕਾਸ)

ਅਸੀਂ ਇੱਕ ਨਵਾਂ ਵਿਰੋਧਾਭਾਸ (paradox) ਦੇਖ ਰਹੇ ਹਾਂ। ਕਿਉਂਕਿ AI ਕੋਡ ਨੂੰ ਸਸਤਾ ਬਣਾ ਦਿੰਦਾ ਹੈ, ਟੀਮਾਂ ਇਸਦਾ ਹੋਰ ਜ਼ਿਆਦਾ ਉਤਪਾਦਨ ਕਰਦੀਆਂ ਹਨ। ਉਹ ਹੋਰ ਸੇਵਾਵਾਂ (services), ਫੀਚਰਾਂ ਅਤੇ ਇੰਟੀਗ੍ਰੇਸ਼ਨਾਂ (integrations) ਨੂੰ ਜੋੜਦੇ ਹਨ। ਮਜ਼ਬੂਤ ਆਰਕੀਟੈਕਚਰ ਤੋਂ ਬਿਨਾਂ, ਇਹ ਬਹੁਤ ਜ਼ਿਆਦਾ ਗੁੰਝਲਤਾ ਪੈਦਾ ਕਰਦਾ ਹੈ।

ਜੇਕਰ ਤੁਸੀਂ AI ਨੂੰ ਪੰਜ ਮਾਈਕ੍ਰੋਸਰਵਿਸਿਜ਼ (microservices) ਅਤੇ ਕਈ APIs ਬਣਾਉਣ ਲਈ ਕਹਿੰਦੇ ਹੋ, ਤਾਂ ਉਹ ਇਹ ਕਰ ਦੇਵੇਗਾ। ਪਰ ਜੇਕਰ ਡਿਜ਼ਾਈਨ ਕਮਜ਼ੋਰ ਹੈ, ਤਾਂ ਸਿਸਟਮ ਫੇਲ ਹੋ ਜਾਵੇਗਾ।

ਸਮੱਸਿਆ ਕੋਡ ਦੀ ਨਹੀਂ ਹੈ। ਸਮੱਸਿਆ ਇਹ ਹੈ ਕਿ ਹਿੱਸੇ ਆਪਸ ਵਿੱਚ ਕਿਵੇਂ ਜੁੜਦੇ ਹਨ।

ਵੱਡੇ ਸਿਸਟਮ ਸਿਰਫ਼ ਫਾਈਲਾਂ ਨਹੀਂ, ਸਗੋਂ ਰਿਸ਼ਤਿਆਂ (relationships) ਦਾ ਸਮੂਹ ਹੁੰਦੇ ਹਨ। ਤੁਹਾਨੂੰ ਫੈਸਲਾ ਕਰਨਾ ਪਵੇਗਾ: • ਕਿਹੜੀ ਸੇਵਾ (service) ਖਾਸ ਡਾਟਾ ਦੀ ਮਾਲਕ ਹੈ? • ਬਿਜ਼ਨਸ ਲੌਜਿਕ (business logic) ਕਿੱਥੇ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ? • ਸੇਵਾਵਾਂ ਆਪਸ ਵਿੱਚ ਕਿਵੇਂ ਗੱਲਬਾਤ (communicate) ਕਰਦੀਆਂ ਹਨ? • ਸੇਵਾ ਦੇ ਫੇਲ ਹੋਣ 'ਤੇ ਕੀ ਹੁੰਦਾ ਹੈ?

AI ਇਹਨਾਂ ਸਮੱਸਿਆਵਾਂ ਨੂੰ ਹੱਲ ਨਹੀਂ ਕਰਦਾ ਕਿਉਂਕਿ ਇਹਨਾਂ ਲਈ ਸੰਦਰਭ (context) ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਸੰਦਰਭ ਵਿੱਚ ਕਾਰੋਬਾਰੀ ਟੀਚੇ, ਟੀਮ ਦਾ ਆਕਾਰ, ਅਤੇ ਪ੍ਰੋਡਕਟ ਰੋਡਮੈਪ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ। ਇਹ ਕਾਰਕ ਕੋਡ ਤੋਂ ਬਾਹਰ ਹੁੰਦੇ ਹਨ।

ਇੱਕ ਇੰਜੀਨੀਅਰ ਦੀ ਕੀਮਤ ਬਦਲ ਰਹੀ ਹੈ। ਜਿਵੇਂ-ਜਿਵੇਂ ਇੰਪਲੀਮੈਂਟੇਸ਼ਨ (implementation) ਆਸਾਨ ਹੁੰਦੀ ਜਾ ਰਹੀ ਹੈ, ਤੁਹਾਡੀ ਕੀਮਤ ਇਹਨਾਂ ਵੱਲ ਵਧ ਰਹੀ ਹੈ: • System design (ਸਿਸਟਮ ਡਿਜ਼ਾਈਨ) • Tradeoff analysis (ਟ੍ਰੇਡ-ਆਫ ਵਿਸ਼ਲੇਸ਼ਣ) • Technical leadership (ਤਕਨੀਕੀ ਲੀਡਰਸ਼ਿਪ) • Architectural thinking (ਆਰਕੀਟੈਕਚਰਲ ਸੋਚ)

ਚੁਣੌਤੀ ਹੁਣ ਕੋਡ ਲਿਖਣਾ ਨਹੀਂ ਰਹੀ। ਚੁਣੌਤੀ ਇਹ ਫੈਸਲਾ ਕਰਨਾ ਹੈ ਕਿ ਕਿਹੜਾ ਕੋਡ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।

AI ਰੁਕਾਵਟ (bottleneck) ਨੂੰ ਬਦਲ ਰਿਹਾ ਹੈ। ਅਸੀਂ ਕੋਡ ਲਿਖਣ ਤੋਂ ਸਿਸਟਮ ਡਿਜ਼ਾਈਨ ਕਰਨ ਵੱਲ ਵਧ ਰਹੇ ਹਾਂ।

ਜੇਤੂ ਡਿਵੈਲਪਰ ਉਹ ਨਹੀਂ ਹੋਣਗੇ ਜੋ ਸਭ ਤੋਂ ਤੇਜ਼ ਕੋਡਰ ਹਨ। ਉਹ ਉਹ ਹੋਣਗੇ ਜੋ ਗੁੰਝਲਤਾ ਨੂੰ ਪ੍ਰਬੰਧਿਤ ਕਰਦੇ ਹਨ ਅਤੇ ਲੰਬੇ ਸਮੇਂ ਦੇ ਫੈਸਲੇ ਲੈਂਦੇ ਹਨ।

ਸਾਫਟਵੇਅਰ ਦਾ ਮੁਲਾਂਕਣ ਇਸ ਗੱਲ ਤੋਂ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਕਿ ਤੁਸੀਂ ਇਸਨੂੰ ਕਿੰਨੀ ਤੇਜ਼ੀ ਨਾਲ ਜਨਰੇਟ ਕਰਦੇ ਹੋ। ਇਸਦਾ ਮੁਲਾਂਕਣ ਇਸ ਗੱਲ ਤੋਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਕਿ ਇਹ ਵਿਕਾਸ ਅਤੇ ਤਬਦੀਲੀ ਦੇ ਨਾਲ ਕਿੰਨੀ ਚੰਗੀ ਤਰ੍ਹਾਂ ਟਿਕਦਾ ਹੈ।

ਸਰੋਤ: https://dev.to/md_mijanur_molla/the-more-ai-writes-code-the-more-architecture-matters-51c