புரோகிராமிங்: கணினிகளின் உளவியல்

நாம் அனைவரும் நிரலாக்கத்துடன் நெருங்கிய தொடர்புடையவர்கள், அது ஒரு பயனராக, ஒரு நிர்வாகியாக, ஒரு புரோகிராமராக இருக்கட்டும், ஆனால் இறுதியில் இது வருடங்கள் செல்லும்போது நம் வாழ்வோடு மேலும் இணைக்கப்படும் ஒன்று.

இந்த கட்டுரையில் (நான் உருவாக்க திட்டமிட்ட ஒரு சிறிய தொடரின் ஆரம்பம்), பல ஆண்டுகளாக நிரலாக்கத்தைப் பற்றி நான் கண்டுபிடித்துள்ளதைப் பற்றிய சில கருத்துகளை உங்களுடன் பகிர்ந்து கொள்ள விரும்புகிறேன். அதிகப்படியான தொழில்நுட்பம் இருப்பதாக நான் கூறவில்லை, அதற்கான காரணத்தை பின்னர் விளக்குகிறேன். ஆனால் நான் என்ன செய்ய விரும்புகிறேன் என்றால், அவர்கள் என் கண்களால் உலகைப் பார்க்க வேண்டும், அது எப்படி இருக்கிறது என்பதை அவர்கள் விரும்பினால், அவர்கள் அதை கொஞ்சம் ஆராய்ந்து பார்க்கட்டும்

விவரங்களுக்குச் செல்வதற்கு முன், எல்லாவற்றிலும் எளிமையான புள்ளியை நான் தாக்குவேன்.

நான் ஏன் ஒரு தொழில்நுட்ப பதவியை செய்யப் போவதில்லை?

சரி, எனது இடுகையைப் படித்தவர்களுக்கு சிறந்த லினக்ஸ் கட்டளை, இந்த கவனம் செலுத்துவதற்கான காரணத்தைப் பற்றி நீங்கள் கொஞ்சம் அறிந்து கொள்வீர்கள். தொழில்நுட்பம் எப்போதும் மாறிக்கொண்டே இருக்கிறது, இன்று நான் ஏதாவது எழுதினால், அந்த இடுகை நல்ல வரவேற்பைப் பெற்றால், நான் எப்போதும் தகவலைப் புதுப்பிக்க வேண்டியிருக்கும். இன்றைய பொதுவான மொழிகளில், மாற்றம் மட்டுமே உறுதி. இதன் மூலம் நான் சொல்கிறேன் (புரோகிராமர்கள் என்னை சரியாக நிரூபிக்க முடியும்) கட்டமைப்புகள் எப்போதுமே அவற்றின் மையங்களிலிருந்து வளர்ந்து வருகின்றன, மாற்றியமைக்கின்றன, ஏனென்றால் பிழைகள் எழுவதால், சிலவற்றை எளிமையாகக் கருதலாம் பிழைகள், மற்றவர்கள் ஆகலாம் பாதிப்புகள். ஒரு குறிப்பிட்ட மொழியைப் பற்றி ஒரு இடுகையை எழுதுவதற்கான காரணம் இதுதான், இன்று, சில மாதங்கள் பயனுள்ளதாக இருக்கும் என்று உத்தரவாதம் அளிக்கும், சிறந்த சந்தர்ப்பங்களில் ஒன்று அல்லது இரண்டு ஆண்டுகள், ஆனால் அது யோசனை அல்ல

மின்சாரம் முக்கியமானது

மிகக் குறைந்த மென்பொருள் நிரலாக்க மொழிகளில் கொஞ்சம் ஆராய்ச்சி செய்த உங்களில், இது அனைத்தும் மின்சாரத்திற்கு முந்தையது என்பதை அறிவார்கள். கடந்த காலத்தில், நிரலாக்கமானது வன்பொருள் மட்டத்தில் செய்யப்பட்டது, இதன் பொருள் அந்த பழைய கடிகாரங்கள், கால்குலேட்டர்கள் மற்றும் பல சாதனங்கள் நிரலாக்கத்தின் மூலம் தங்கள் விதியை நிறைவேற்ற முடியும் வன்பொருள்.

பிரச்சனை

வன்பொருள் நிரலாக்கத்தை மாற்றுவது விலை உயர்ந்தது மற்றும் சிக்கலானது 🙂 (குறைந்தபட்சம் அவர்கள் என்னிடம் சொன்னார்கள் ). இதனால்தான் செயலிகள் வெளிவந்தன, இது உண்மையில் வன்பொருள் அடுக்கை சுருக்கி, வன்பொருள் மூலம் சாத்தியமான அனைத்தையும் செய்யக்கூடிய சில கட்டளைகளை நமக்கு அளிக்கிறது, இப்போது வன்பொருள் அடுக்கில் மட்டுமே. மென்பொருள்.

செயலிகள்

இன்றைய செயலிகள் குறிப்பிட்ட எண்ணிக்கையிலான செயல்பாடுகளைக் கொண்டுள்ளன, அவை அழைக்கப்படுகின்றன அறிவுறுத்தல்கள் பல புத்தகங்களில். வன்பொருள் செய்யக்கூடிய மிக அடிப்படையான செயல்பாடுகளைச் செய்யவும், கணினியின் நினைவகம் மூலம் தகவல்களைத் திரட்டவும் இவை உங்களை அனுமதிக்கின்றன.

பதிவாளர்கள்

பதிவேடுகள் என்பது செயலி கர்னலில் வேலைகளைச் செய்யக்கூடிய தகவல்களைச் சேமிக்கும் ஒரு இடமாகும், அவை வேறுபட்ட அளவு மற்றும் ஒழுங்கைக் கொண்டிருக்கக்கூடிய கட்டமைப்பைப் பொறுத்து, ஆனால் ஒரு எளிய வழியில், அவற்றின் செயல்பாடு செயலியைக் கூறும் தரவைச் சேமிப்பதாகும் பின்வரும் வகை வேலைகளில் ஒன்று: தரவு, எண்கணிதம் மற்றும் தர்க்கம் மற்றும் கட்டுப்பாடு ஆகியவற்றை நகர்த்தவும் ஓட்டம். இந்த வகையான செயல்பாடுகளில் எல்லாவற்றையும் சுருக்கமாகக் கூறலாம்.

Binario

செயலிகள் பைனரி மட்டத்தில் செயல்படுகின்றன, இதன் பொருள் அவர்கள் மட்டுமே புரிந்துகொள்கிறார்கள் 0sy 1ஆம். இங்கே ஒரு வினோதமான உண்மைகுனு / லினக்ஸ் அனுமதிகள் நினைவில் இருக்கிறதா? நன்றாக,செயலி உண்மையில் அந்த அனுமதிகளை எவ்வாறு அங்கீகரிக்கிறது என்பதை நீங்கள் எப்போதாவது யோசித்திருக்கிறீர்களா?? எளிய பைனரி. மிகக் குறைந்த மட்டத்தில், ஒரு செயலி அனுமதிகளை 0 கள் மற்றும் 1 வி ஆகியவற்றின் தொடர்ச்சியாகப் புரிந்துகொள்வார், அதனால்தான் நாம் உருவாக்கும் ஆக்டலுக்கு மதிப்புகள் உள்ளன மரணதண்டனைக்கு, 2 வாசிப்பிற்கும் 4 எழுதுவதற்கும். பைனரி படிக்கக்கூடியவர்களுக்கு, அவர்கள் அதைப் புரிந்துகொள்வார்கள்:

111100101111

அவர்கள் குழுவிற்கான வாசிப்புகளை எழுதுகிறார்கள், எழுதுகிறார்கள் மற்றும் செயல்படுத்துகிறார்கள் otros குழுவிற்கு செயல்திறன் மற்றும் வாசிப்பு வைக்கும் போது குழு கோப்பு உரிமையாளருக்கு மட்டுமே படிக்கவும். மிகவும் ஆர்வமாக, கடைசி மூன்று 1 கள் செயல்படுத்துகின்றன setguid, setuid மற்றும் sticky bit. இந்த பைனரி என்னவென்று உங்களுக்குத் தெரியாவிட்டால், இதை இன்னொரு பதிவில் விளக்கலாம், இது செட்யூட், செட்கிட் மற்றும் ஒட்டும் பிட் பற்றி உங்களுக்குத் தெரியாவிட்டால், நான் அதை உங்களிடம் விட்டு விடுகிறேன் 😉 ஆனால் தேவைப்பட்டால் வேறு இடத்திலும் விளக்கலாம்.

ஆர்வம் அழைக்கும் போது ...

சரி, நீங்கள் இங்கே என்னைப் பின்தொடர்ந்திருந்தால், உங்கள் ஆர்வம் நிறைய விஷயங்களைக் கேட்கத் தொடங்க வேண்டும், முதலில் நான் பதிலளிக்க விரும்புகிறேன் (நான் ஏற்கனவே நிறைய எழுதுகிறேன் என்பதால் இந்த இடுகை என்னை அனுமதிக்கும் ஒரே ஒரு விஷயம்): அழைப்புகள் ஒரே மாதிரியாக இருந்தால், நிரல்கள் ஏன் மிகவும் வேறுபடுகின்றன?

உளவியல்

புரோகிராமிங் என்பது மனதைப் படிக்கக் கற்றுக் கொள்ளும் கலை long நீண்ட காலத்திற்கு முன்பு நான் படித்த மேற்கோளுடன் இந்த பகுதியைத் தொடங்க விரும்புகிறேன், எட்ஸர் டிஜ்க்ஸ்ட்ரா கூறினார்:

பிழைத்திருத்தம் பிழைத்திருத்தத்தின் செயல்முறையாக இருந்தால், நிரலாக்கமானது அவற்றை அறிமுகப்படுத்தும் செயல்முறையாக இருக்க வேண்டும்

இதையெல்லாம் விளக்க ஒரு சிறந்த வழியை என்னால் கண்டுபிடிக்க முடியவில்லை-பிழைகளை அறிமுகப்படுத்தும் கலையை நிரலாக்க ஏன் செய்கிறது? இந்த நேரத்தில் ஒன்றுக்கு மேற்பட்டவர்கள் ஆச்சரியப்படுவார்கள். பதில் எளிது, ஏனென்றால் நம் மனம் மனிதர்கள், மனிதர்கள் தவறு செய்கிறார்கள் 🙂 இது நம் இயல்பு, மற்றும் மனிதன் கிரகத்தில் இருக்கும் வரை அது இருக்கும்.

கணினிகள் தவறாக இல்லை

தவறு செய்பவர்கள் நாங்கள், அணிகள் எப்போதுமே நாம் சொல்வதை இனப்பெருக்கம் செய்வதில் தங்களை மட்டுப்படுத்திக் கொள்ளும், அவர்கள் எதையும் எடுத்துக்கொள்வதில்லை, அவர்கள் எதையும் விளக்குவதில்லை, அவர்கள் எதையும் எதிர்க்க மாட்டார்கள், அவர்கள் படித்து செயல்படுகிறார்கள். எனவே மற்றொரு சி புத்தகத்தில் நான் இதைப் போன்ற ஒன்றைப் படித்தேன்:

சி என்பது முரட்டுத்தனமான மொழி, நீங்கள் இதை நிறைய செய்ய முடியும், ஆனால் நீங்கள் அதை செய்ய விரும்பினால் அது உங்களை ஒருபோதும் காலில் சுடுவதைத் தடுக்காது, அல்லது நீங்கள் அதைச் சொல்லுங்கள்.

இது மிகவும் ஆர்வமுள்ள உண்மை such இவ்வளவு குறைந்த மட்டத்தில் பணிபுரியும் போது, ​​மேற்கொள்ளப்படும் பல செயல்பாடுகள் அழிவுகரமானதாக இருக்கக்கூடும், இது பிழை தடுப்பு அடுக்குகள் பழையவை என்பதால் சற்று உயர்ந்த மட்ட மொழிகளில் நடக்காது.

எல்லாம் உளவியல்

ஒவ்வொரு மொழியும், கட்டமைப்பும், புரோகிராமரும், ஒருவித தத்துவத்தை மதிக்கிறார்கள், பின்பற்றுகிறார்கள், அது இல்லையென்றால், அதற்கு மிகவும் நம்பிக்கைக்குரிய எதிர்காலம் இல்லை. யுனிக்ஸ் மற்றும் டெரிவேடிவ்களில் பணிபுரியும் நம்மவர்கள் பழைய சொற்றொடரை அறிந்திருப்பார்கள்:

ஒரு காரியத்தைச் செய்யுங்கள், அதை நன்றாகச் செய்யுங்கள்.

இந்த தத்துவம் கர்னல் போன்ற சில திட்டங்களைத் தொடர்ந்து வருகிறது, மிகச் சிறிய செயல்பாடுகள் ஒரு காரியத்தை மட்டுமே செய்கின்றன, ஆனால் அவர்களால் முடிந்ததைச் செய்யுங்கள்.

நாம் பிற மொழிகளுக்குச் சென்றால், ஒவ்வொன்றுக்கும் ஒரு செயல்பாடு மற்றும் குறிக்கோள் இருக்கும், இன்னும் சில அனுமதிக்கப்பட்டவை மற்றும் பிறவற்றைக் கட்டுப்படுத்துகின்றன, ஆனால் அனைத்தும் அவற்றின் சொந்த சிந்தனையைப் பின்பற்றுகின்றன.

மனதைப் படிக்க கற்றுக்கொள்ளுங்கள்

புரோகிராமர்களிடையே ஒரு பொதுவான பழமொழி உள்ளது, அதே சிக்கலை தீர்க்க நூற்றுக்கணக்கான வழிகள் உள்ளன. இது உண்மைதான், ஆனால் இந்த அம்சத்தைப் பற்றி மிகவும் ஆழமான ஒன்று உள்ளது. மூலக் குறியீட்டைப் படிப்பது மனதைப் படிக்க உங்களை அனுமதிக்கிறது - எந்த மனதையும் மட்டுமல்ல, அதை எழுதிய புரோகிராமரின் (அல்லது புரோகிராமர்களின்) மனதையும். இது ஒரு வகையான மெய்நிகர் மற்றும் ஆழமான நாட்குறிப்பு-இது டெவலப்பரின் மனதை ஆழமாக அறிந்து கொள்ள உங்களை அனுமதிக்கிறது, மேலும் பெரிய திட்டங்களைப் பொறுத்தவரை, காலப்போக்கில் அவற்றின் தர்க்கரீதியான மற்றும் விமர்சன சிந்தனை எவ்வாறு வளர்ந்துள்ளது என்பதைப் பார்க்க இது உங்களை அனுமதிக்கிறது. அசாதாரணமான ஒன்று மற்றும் இளையவரின் மனதை பெரிதும் வளர்க்கிறது, ஏனென்றால் அவற்றைக் கண்டுபிடிக்க வேண்டியவர்களின் சிறந்த பாதைகளை நீங்கள் அறிந்து கொள்ளலாம்

சீராக இருக்க வேண்டும்

பல புரோகிராமர்களும் நிபுணர்களும் நாங்கள் எங்களிடமிருந்து வெளியேற வேண்டும் என்று கூறுகிறார்கள் ஆறுதல் மண்டலம், அது உண்மைதான் என்றாலும், சில செயல்முறைகள் மற்றும் வடிவங்களை பராமரிப்பதும் அவசியமாகும். இதை விளக்குவது எளிது, எங்கள் மனம் மீண்டும் மீண்டும் மற்றும் மரியாதைக்குரிய கட்டமைப்புகள், நீங்கள் ஒவ்வொரு நாளும் ஒரே மாதிரியாக குறியீட்டை எழுதினால், குறுகிய காலத்தில் நீங்கள் படிவத்தைப் பற்றி சிந்திப்பதை நிறுத்திவிடுவீர்கள், மேலும் அதில் நீங்கள் கவனம் செலுத்த முடியும். பின்னணி. இது பார்க்க உங்களை அனுமதிக்கிறது தர்க்கம் அதற்கு பதிலாக நிரலின் மொழி தொடரியல். கற்றல் என்று நான் கருதுவதற்கு இதுவே காரணம் கருத்துக்கள் கற்றலை விட எப்போதும் முக்கியமானதாக இருக்கும் வடிவங்கள். இது ஒரு தனிப்பட்ட கருத்து, ஆனால் இதையெல்லாம் படித்த பிறகு நீங்கள் அதை ஏன் அவ்வாறு கருதுகிறீர்கள் என்பதை நீங்கள் புரிந்து கொள்ள முடியும் என்று நம்புகிறேன் C சி, ஜாவா, ஜாவாஸ்கிரிப்ட், பைதான், ரூபி, பி.எச்.பி மற்றும் பிறவற்றில் நிரல் செய்ய வேண்டிய ஒருவர் சொன்னார் told தெரியும் கருத்துக்கள் குறியீட்டை எழுதுவதை எளிதாக்குகிறது.

சுருக்கமாக

சரி, இது ஒரு தொடரின் முதல் படியாகும், இது நிரலாக்கக் கலையைப் பற்றி வித்தியாசமாக சிந்திக்க உதவும் என்று நம்புகிறேன், நீங்கள் எழுதிய குறியீட்டை நூற்றுக்கணக்கான முறை செயல்படுத்த அனுமதிக்கும் கருத்துகளை ஆராய்வதற்கு உங்களை அழைக்கவும், ஆனால் அது உண்மையில் என்ன செய்கிறது என்பதைப் பற்றி சிந்திக்க அவர்கள் நிறுத்தவில்லை. நிரலாக்கத்தைத் தொடங்காத, ஆனால் விரும்புபவர்களுக்கு, தெரிந்துகொள்ள மிகவும் முக்கியமானது என்ன என்பதைப் பற்றி கொஞ்சம் முன்னுரிமை அளிக்க விரும்புகிறேன் 🙂 வாழ்த்துக்கள்


உங்கள் கருத்தை தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்பட்ட முடியாது. தேவையான புலங்கள் குறிக்கப்பட்டிருக்கும் *

*

*

  1. தரவுக்கு பொறுப்பு: மிகுவல் ஏஞ்சல் கேடன்
  2. தரவின் நோக்கம்: கட்டுப்பாட்டு ஸ்பேம், கருத்து மேலாண்மை.
  3. சட்டபூர்வமாக்கல்: உங்கள் ஒப்புதல்
  4. தரவின் தொடர்பு: சட்டபூர்வமான கடமையால் தவிர மூன்றாம் தரப்பினருக்கு தரவு தெரிவிக்கப்படாது.
  5. தரவு சேமிப்பு: ஆக்சென்டஸ் நெட்வொர்க்குகள் (EU) வழங்கிய தரவுத்தளம்
  6. உரிமைகள்: எந்த நேரத்திலும் உங்கள் தகவல்களை நீங்கள் கட்டுப்படுத்தலாம், மீட்டெடுக்கலாம் மற்றும் நீக்கலாம்.

  1.   ஜேவியர் ஜி. டெல்கடோ அவர் கூறினார்

    நிரலாக்கத்தைப் பற்றி விவாதிக்கப்படும் (இந்த விஷயத்தில்) ஒரு புதிய மொழியில் அதிக ஆழத்தில் நிரல்கள் விவாதிக்கப்படும் மிகவும் மனசாட்சியுள்ள கட்டுரை, எனது ஆதரவு பின்வருவனவற்றிற்கு செல்கிறது.

    1.    கிறிஸ்ஏடிஆர் அவர் கூறினார்

      வணக்கம் ஜேவியர், மிக்க நன்றி this இது மிகவும் முக்கியமானது என்று நான் நினைக்கிறேன், ஏனென்றால் அவர்கள் எப்போதும் குறியீட்டை இனப்பெருக்கம் செய்ய மட்டுமே எனக்கு கற்பிக்க விரும்புவதால், பிரபலமான Ctrl + C ... Ctrl + V 🙂 ஆனால் இதை நான் ஒருபோதும் இழுக்க விடவில்லை, இது உலகின் எளிமையான பிரச்சினையாக இருந்தாலும், அதை வேறு ஒருவரிடமிருந்து நகலெடுப்பதை விட நான் எழுத விரும்புகிறேன், இது எனது படைப்பு என்று எனக்குத் தோன்றுகிறது.
      மேற்கோளிடு

  2.   பலுவா அவர் கூறினார்

    ஏற்கனவே அடுத்த அத்தியாயத்திற்காகக் காத்திருக்கிறேன், நான் வெகு காலத்திற்கு முன்பு நிரலாக்கத்தை நிறுத்திவிட்டேன், பின்னர் எனது அத்தியாயத்திற்கு சில காரணங்களைக் காணலாம் என்று நினைக்கிறேன், உண்மையில், இந்த அத்தியாயத்திலிருந்து நான் என் தொப்பியைக் கழற்றினேன்.

  3.   கிறிஸ்ஏடிஆர் அவர் கூறினார்

    வணக்கம் பலுவா
    சரி, அடுத்தவருக்கு ஏதாவது கொண்டு வருகிறேன். எந்தவொரு இடுகையிலிருந்தும் நூலைப் பின்தொடரக்கூடிய வகையில் எல்லாவற்றையும் ஒழுங்கமைப்பது சற்று தந்திரமானது, ஆனால் இதை மிக விரைவில் (என்னிடம் கேட்ட பலரும்) பெற முயற்சிப்பேன். உங்கள் கருத்துக்கு நன்றி. சியர்ஸ்

  4.   ஆண்டர்ஸ் அவர் கூறினார்

    ஒரு கட்டுரையின் ரத்தினம்! அடுத்ததை நம்புகிறேன் ...