ਜਾਣ-ਪਛਾਣ
ਪ੍ਰੋਗਰਾਮਿੰਗ ਇੱਕ ਵਧਦੀ ਮੰਗ ਵਾਲਾ ਹੁਨਰ ਹੈ ਡਿਜੀਟਲ ਯੁੱਗ ਵਿੱਚ ਜਿੱਥੇ ਅਸੀਂ ਆਪਣੇ ਆਪ ਨੂੰ ਪਾਉਂਦੇ ਹਾਂ। ਪ੍ਰੋਗਰਾਮਿੰਗ ਦੇ ਬੁਨਿਆਦੀ ਪਹਿਲੂਆਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ ਇੱਕ ਦੁਭਾਸ਼ੀਏ ਅਤੇ ਇੱਕ ਕੰਪਾਈਲਰ ਵਿੱਚ ਅੰਤਰ ਨੂੰ ਸਮਝਣਾ।
ਕੰਪਾਈਲਰ
ਆਮ ਸ਼ਬਦਾਂ ਵਿੱਚ, ਇੱਕ ਕੰਪਾਈਲਰ ਇੱਕ ਪ੍ਰੋਗਰਾਮ ਹੁੰਦਾ ਹੈ ਜੋ ਇੱਕ ਉੱਚ-ਪੱਧਰੀ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਵਿੱਚ ਲਿਖੇ ਸਰੋਤ ਕੋਡ ਨੂੰ ਇੱਕ ਹੇਠਲੇ-ਪੱਧਰੀ ਭਾਸ਼ਾ ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਦਾ ਹੈ ਜਿਸਨੂੰ ਸਿੱਧੇ ਮਸ਼ੀਨ 'ਤੇ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਇੱਕ ਸਰੋਤ ਕੋਡ ਫਾਈਲ ਨੂੰ ਇੱਕ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਫਾਈਲ ਵਿੱਚ ਕੰਪਾਇਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਿਸਦੀ ਵਰਤੋਂ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਚਲਾਉਣ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਸੰਕਲਨ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਤਿੰਨ ਪੜਾਵਾਂ ਵਿੱਚ ਵੰਡਿਆ ਜਾਂਦਾ ਹੈ: ਪਾਰਸਿੰਗ, ਅਨੁਕੂਲਨ ਅਤੇ ਕੋਡ ਜਨਰੇਸ਼ਨ।
ਵਿਸ਼ਲੇਸ਼ਣ
ਇਸ ਪੜਾਅ 'ਤੇ, ਕੰਪਾਈਲਰ ਸਰੋਤ ਕੋਡ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ ਇਸਦੇ ਮੂਲ ਸਿੰਟੈਕਟਿਕ ਅਤੇ ਅਰਥਵਾਦੀ ਹਿੱਸਿਆਂ ਵਿੱਚ ਵੰਡਦਾ ਹੈ। ਇਹ ਪ੍ਰਕਿਰਿਆ ਇਸਨੂੰ ਸ਼ਬਦਾਵਲੀ ਵਿਸ਼ਲੇਸ਼ਣ ਅਤੇ ਵਾਕ-ਵਿਹਾਰ ਵਿਸ਼ਲੇਸ਼ਣ ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਵਾਕ-ਵਿਹਾਰ ਵਿਸ਼ਲੇਸ਼ਣ ਇਹ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ ਕਿ ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਵਿੱਚ ਵੈਧ ਹੋਣ ਲਈ ਨਿਰਦੇਸ਼ ਕਿਵੇਂ ਲਿਖੇ ਜਾਣੇ ਚਾਹੀਦੇ ਹਨ। ਦੂਜੇ ਪਾਸੇ, ਅਰਥ-ਵਿਹਾਰ ਵਿਸ਼ਲੇਸ਼ਣ ਇਹ ਪੁਸ਼ਟੀ ਕਰਦਾ ਹੈ ਕਿ ਕੋਡ ਸਹੀ ਢੰਗ ਨਾਲ ਸੰਰਚਿਤ ਹੈ ਅਤੇ ਹਰ ਚੀਜ਼ ਇਕਸਾਰ ਹੈ।
ਸੁਯੋਗਕਰਨ
ਅਗਲਾ ਪੜਾਅ ਸੋਰਸ ਕੋਡ ਔਪਟੀਮਾਈਜੇਸ਼ਨ ਹੈ। ਇੱਥੇ, ਕੰਪਾਈਲਰ ਕੋਡ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਦਾ ਹੈ ਕਿ ਕੀ ਇਸਦੀ ਗਤੀ ਜਾਂ ਕੁਸ਼ਲਤਾ ਵਿੱਚ ਸੁਧਾਰ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਔਪਟੀਮਾਈਜੇਸ਼ਨ ਦਾ ਟੀਚਾ ਇੱਕ ਪ੍ਰੋਗਰਾਮ ਦੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਸਮੇਂ ਅਤੇ ਇਸਨੂੰ ਚਲਾਉਣ ਲਈ ਲੋੜੀਂਦੀ ਮੈਮੋਰੀ ਦੀ ਮਾਤਰਾ ਨੂੰ ਘਟਾਉਣਾ ਹੈ।
ਕੋਡ ਜਨਰੇਸ਼ਨ
ਅੰਤਿਮ ਪੜਾਅ ਵਿੱਚ, ਕੰਪਾਈਲਰ ਮਸ਼ੀਨ ਕੋਡ ਤਿਆਰ ਕਰਦਾ ਹੈ ਜੋ ਮਸ਼ੀਨ 'ਤੇ ਚੱਲਣਯੋਗ ਹੁੰਦਾ ਹੈ। ਇਹ ਉਹ ਕੋਡ ਹੈ ਜੋ ਇੱਕ ਪ੍ਰੋਗਰਾਮ ਦੇ ਤੌਰ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ ਅਤੇ ਕਿਸੇ ਹੋਰ ਪ੍ਰੋਗਰਾਮ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਸਿੱਧਾ ਮਸ਼ੀਨ 'ਤੇ ਚੱਲਦਾ ਹੈ।
ਦੁਭਾਸ਼ੀਆ
ਇੱਕ ਦੁਭਾਸ਼ੀਏ ਇੱਕ ਪ੍ਰੋਗਰਾਮ ਹੁੰਦਾ ਹੈ ਜੋ ਸਰੋਤ ਕੋਡ ਦਾ ਅਨੁਵਾਦ ਕਰਨ ਦੀ ਬਜਾਏ ਕਿਸੇ ਹੋਰ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ। ਇੱਕ ਫਾਈਲ ਨੂੰ ਇੱਕ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਵਿੱਚ, ਇੰਟਰਪ੍ਰੇਟਰ ਕੋਡ ਨੂੰ ਸਿੱਧਾ ਪੜ੍ਹਦਾ ਅਤੇ ਚਲਾਉਂਦਾ ਹੈ। ਯਾਨੀ, ਇੰਟਰਪ੍ਰੇਟਰ ਸੋਰਸ ਕੋਡ ਨੂੰ ਲਾਈਨ ਦਰ ਲਾਈਨ ਪੜ੍ਹਦਾ ਹੈ, ਇਸਨੂੰ ਮਸ਼ੀਨ ਕੋਡ ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਦਾ ਹੈ, ਅਤੇ ਇਸਨੂੰ ਚਲਾਉਂਦਾ ਹੈ।
ਅੰਤਰ
ਇੱਕ ਕੰਪਾਈਲਰ ਅਤੇ ਇੱਕ ਦੁਭਾਸ਼ੀਏ ਵਿੱਚ ਮੁੱਖ ਅੰਤਰ ਇਹ ਹੈ ਕਿ ਕੋਡ ਨੂੰ ਕਿਵੇਂ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ। ਜਦੋਂ ਕਿ ਇੱਕ ਕੰਪਾਈਲਰ ਕੋਡ ਨੂੰ ਇੱਕ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਫਾਈਲ ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਦਾ ਹੈ ਜੋ ਕਿਸੇ ਹੋਰ ਪ੍ਰੋਗਰਾਮ ਦੀ ਲੋੜ ਤੋਂ ਬਿਨਾਂ ਸਿੱਧੇ ਮਸ਼ੀਨ 'ਤੇ ਚੱਲਦਾ ਹੈ, ਇੱਕ ਦੁਭਾਸ਼ੀਏ ਕੋਡ ਨੂੰ ਲਾਈਨ ਦਰ ਲਾਈਨ ਪੜ੍ਹਦਾ ਅਤੇ ਚਲਾਉਂਦਾ ਹੈ।
ਗਤੀ
ਗਤੀ ਵੀ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਅੰਤਰ ਹੈ। ਇੱਕ ਕੰਪਾਇਲ ਕੀਤਾ ਪ੍ਰੋਗਰਾਮ ਇੱਕ ਇੰਟਰਪਰੇਟ ਕੀਤੇ ਪ੍ਰੋਗਰਾਮ ਨਾਲੋਂ ਤੇਜ਼ੀ ਨਾਲ ਚੱਲ ਸਕਦਾ ਹੈ। ਕੰਪਾਇਲ ਕੀਤਾ ਕੋਡ ਸਿੱਧਾ ਮਸ਼ੀਨ 'ਤੇ ਚੱਲਦਾ ਹੈ, ਜਦੋਂ ਕਿ ਇੰਟਰਪਰੇਟ ਕੀਤੇ ਕੋਡ ਵਿੱਚ ਇੰਟਰਪਰੇਟ ਕੀਤੇ ਕੋਡ ਦੇ ਜੀਵਨ ਕਾਲ ਦਾ ਓਵਰਹੈੱਡ ਹੁੰਦਾ ਹੈ, ਜੋ ਇਸਨੂੰ ਤੁਲਨਾ ਵਿੱਚ ਹੌਲੀ ਬਣਾਉਂਦਾ ਹੈ।
ਪੋਰਟੇਬਿਲਟੀ
ਇੱਕ ਹੋਰ ਮਹੱਤਵਪੂਰਨ ਅੰਤਰ ਕੋਡ ਪੋਰਟੇਬਿਲਟੀ ਹੈ। ਕੰਪਾਇਲ ਕੀਤਾ ਕੋਡ ਪਲੇਟਫਾਰਮ-ਵਿਸ਼ੇਸ਼ ਹੈ, ਭਾਵ ਇੱਕ ਪਲੇਟਫਾਰਮ 'ਤੇ ਬਣਾਇਆ ਗਿਆ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਕੋਡ ਦੂਜੇ ਪਲੇਟਫਾਰਮ 'ਤੇ ਨਹੀਂ ਚਲਾਇਆ ਜਾ ਸਕਦਾ। ਦੂਜੇ ਪਾਸੇ, ਇੰਟਰਪ੍ਰੇਟਡ ਕੋਡ ਪੋਰਟੇਬਲ ਹੈ ਅਤੇ ਕਿਸੇ ਵੀ ਪਲੇਟਫਾਰਮ 'ਤੇ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਇੰਟਰਪ੍ਰੇਟਰ ਸਥਾਪਤ ਹੈ।
ਸਿੱਟਾ
ਆਮ ਤੌਰ 'ਤੇ, ਦੋਵੇਂ ਔਜ਼ਾਰ (ਕੰਪਾਈਲਰ ਅਤੇ ਦੁਭਾਸ਼ੀਏ) ਮਹੱਤਵਪੂਰਨ ਹਨ। ਦੁਨੀਆ ਵਿੱਚ ਪ੍ਰੋਗਰਾਮਿੰਗ ਦਾ। ਇੱਕ ਪ੍ਰੋਗਰਾਮਰ ਨੂੰ ਇਹ ਵਿਚਾਰ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ ਕਿ ਕਿਹੜਾ ਇਹ ਸਭ ਤੋਂ ਵਧੀਆ ਹੈ। ਚੋਣ ਪ੍ਰੋਜੈਕਟ ਦੀਆਂ ਜ਼ਰੂਰਤਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ। ਇਸ ਲਈ, ਸੰਖੇਪ ਵਿੱਚ, ਇੱਕ ਕੰਪਾਈਲਰ ਉੱਚ-ਪੱਧਰੀ ਕੋਡ ਨੂੰ ਹੇਠਲੇ-ਪੱਧਰੀ ਕੋਡ ਵਿੱਚ ਬਦਲਦਾ ਹੈ ਜਿਸਨੂੰ ਮਸ਼ੀਨ 'ਤੇ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ, ਜਦੋਂ ਕਿ ਇੱਕ ਦੁਭਾਸ਼ੀਏ ਕੋਡ ਨੂੰ ਸਿੱਧਾ, ਲਾਈਨ ਦਰ ਲਾਈਨ ਚਲਾਉਂਦਾ ਹੈ।
ਮੈਂ ਸੇਬੇਸਟਿਅਨ ਵਿਡਾਲ ਹਾਂ, ਇੱਕ ਕੰਪਿਊਟਰ ਇੰਜੀਨੀਅਰ ਟੈਕਨਾਲੋਜੀ ਅਤੇ DIY ਬਾਰੇ ਭਾਵੁਕ ਹਾਂ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਮੈਂ ਦਾ ਸਿਰਜਣਹਾਰ ਹਾਂ tecnobits.com, ਜਿੱਥੇ ਮੈਂ ਹਰ ਕਿਸੇ ਲਈ ਤਕਨਾਲੋਜੀ ਨੂੰ ਵਧੇਰੇ ਪਹੁੰਚਯੋਗ ਅਤੇ ਸਮਝਣਯੋਗ ਬਣਾਉਣ ਲਈ ਟਿਊਟੋਰਿਅਲ ਸਾਂਝੇ ਕਰਦਾ ਹਾਂ।