10 مورد مهم که در برنامه نویسی به ان برخورد دارید
1| کمبود کنجکاوی
اگر کنجکاوی در مورد رایانه ها و نحوه کار فناوری نداشته باشید ، هرگز به عنوان یک برنامه نویس موفق نخواهید شد.
یک نیاز اساسی برای یادگیری علاقه فعال به چیزی است که شما می آموزید. اگر فکری برای فن آوری کنجکاوی ندارید ، در یادگیری دانش گسترده و عمیق مورد نیاز برای داشتن یک برنامه نویس موفق ، انرژی لازم را برای ادامه آن ندارید.
در مقابل ، دنیای فناوری مانند اقیانوس عظیمی از حوزه های جالب ، ایده های به هم پیوسته و امکاناتی است که می تواند تخیل را برانگیزد. این انگیزه ذاتی داخلی را می طلبد که بخواهیم در آن شیرجه بزنیم و هرچه را می توان کشف کرد.
کنجکاوی خود را پیدا کنید: از خود بپرسید که آیا برنامه نویسی واقعاً به شما علاقه دارد؟ اگر پاسخ صادقانه شما این است که اینگونه نیست ، بروید چیزی را که به آن علاقه دارید پیدا کنید. در وقت و انرژی خود صرفه جویی کنید. اما اگر پاسخ شما "بله" است ، به خود فشار دهید تا چیز جدیدی را که قبلاً متوجه آن نشده اید ، اقیانوس پهناور را بشناسید و کمی عمیق تر فرو شوید.
2 | عدم استقلال و توانمندی
اگر توانایی حل مشکلات برای خودتان را ندارید ، هرگز به عنوان یک برنامه نویس موفق نخواهید شد.
بدون شک ، برای اینکه یک برنامه نویس موفق باشید ، باید به توانایی OWN در یادگیری خود اطمینان داشته باشید. این در واقع یک مهارت اساسی در زندگی است - اگر شما بالای 18 سال دارید ، هیچ کس موظف نیست چیزی را به شما یاد دهد. این واقعیت است این اطلاعات برای شما و کمک به شما لازم است تا بدانید که چه چیزی برای شما مهم است را پیدا کنید.
در دنیای توسعه ، تمام اطلاعات مورد نیاز شما در آن مکان جادویی که قبلاً به عنوان بزرگراه اطلاعات خوانده می شد ، یافت می شود. این کتابخانه عظیم دارای یک درگاه بزرگ: Google. یادگیری این مسئله که می توانید به سادگی هر آنچه را که می خواهید در گوگل تایپ کنید و به اطلاعات مورد نیاز خود برسید ، اولین موانعی است که وقتی می خواهید مهارت های مورد نیاز برای فن آوری را یاد بگیرید ، عبور می کند.
علاوه بر اینکه یک گوگل خوب است ، تمام زبان های برنامه نویسی دارای مستندات و مشخصات هستند که در مورد نحوه کار این زبان کاملاً صریح است. مانند استفاده از فرهنگ لغت است - وقتی کلمه ای را می شناسید که نمی شناسید ، آن را جستجو می کنید. سریعترین ، مطمئن ترین راه برای ایجاد مهارت خود به عنوان یک برنامه نویس ، خواندن اسناد به سادگی است. به معنای واقعی کلمه وجود دارد
از منابع استفاده کنید: تشخیص دهید که تمام پاسخ های مورد نیاز شما واقعاً در آنجا هستند. وقتی سؤالی دارید ، قبل از پاسخ دادن به شخص دیگری برای پاسخ دادن به آن ، مجبور شوید که آن را google کنید و مدارک را بررسی کنید. در وقت دیگری که سعی کرده اید و واقعاً نتوانسته اید جواب مورد نیاز خود را پیدا کنید ، وقت دیگران را صرفه جویی کنید.
3 | عدم تداوم در مواجهه با مشکل
اگر در مواجهه با مشکلات به راحتی تسلیم شوید ، هرگز به عنوان یک برنامه نویس موفق نخواهید شد.
جوهر برنامه نویسی حل مشکلات است. این دلیل تمام اختراعات رایانه هاست! هر وقت شروع به کار بر روی یک برنامه کردید ، با "پشته" ای از مشکلات روبرو می شوید. و هنگامی که شما یک مشکل را حل کردید ، تقریبا همیشه همیشه مشکل دیگری وجود دارد. شما در حال پیشرفت هستید ، اما همیشه مشکلات جدیدی برای پیش روی دارید.
مواجهه با این پشته از مشکلات می تواند دلهره آور و دلسرد کننده باشد. اگر احساس می کنید چیزهایی باید "فقط کار کنند" ، پس از ادامه مشکلات ، انرژی لازم برای ادامه کار را ندارید و کم کم عزم عاطفی خود را کم کنید. این به معنای واقعی کلمه کار شماست که بفهمید چرا کارها کار نمی کنند.
از تجربه درون کلاس من ، معمولاً در هر کلاس یک یا دو دانش آموز وجود دارند که به نظر می رسد برای مواجهه با مشکلات بیشتر نسبت به سایر دانش آموزان - که اغلب مشکلات کاملاً تصادفی و مبهم هستند ، به سختی برخورد می کنند. به دانش آموز یادآوری می کنم که هرچه بیشتر مشکلات پیش روی آنها باشد ، امکان یادگیری عمیق تر و کامل تر افزایش می یابد. اگر آنها بتوانند از طریق این مشکلات درک کنند ، به سرعت متوجه خواهند شد که اطمینان بیشتری دارند زیرا با مشکلات بیشتری نسبت به دانش آموز متوسط روبرو شده اند و حل کرده اند.
پذیرش بیمار: شما باید تشخیص دهید که مشکلات مربوط به قلمرو هستند و مشکلی نیستند بلکه در واقع چالش هایی هستند. هر چالشی که با آن روبرو هستید و بر آن غلبه کرده اید ، درک عمیق تر و توانایی بهتری برای مواجهه با چالش های جدید را به شما می دهد و سریع مشکلات قدیمی را برطرف می کند.
4 | احساس موفقیت در غلبه بر یک مشکل نیست
اگر بعد از حل مشکل احساس هیجان و موفقیت نداشته باشید ، هرگز به عنوان یک برنامه نویس موفق نخواهید شد.
در رابطه با شماره قبلی تسلیم بیش از حد آسان ، فقدان "احساس خوب" است هنگامی که شما یک مشکل را با موفقیت حل کرده اید. وقتی رفع اشکالات و مشکلات به یک تردمیل تبدیل می شود که به نظر نمی رسد هرگز به پایان برسد ، با هیجان ناشی از غلبه بر یک مشکل ، تماس خود را از دست می دهید.
در واقع یک ضربه دوپامین وجود دارد که هنگام غلبه بر یک مشکل به آن نیاز دارید. این شبیه به تجربه تکمیل سطح در یک بازی ویدیویی یا حل چالشی مانند جدول کلمات متقاطع یا سودوکو است. همه ما می دانیم که یک احساس خوب وجود دارد که از ادامه آن در یک چالش ناشی می شود و در آخر برنده می شود. اما اگر توانایی احساس آن احساسات را از دست داده اید یا اصلاً در وهله اول از آن مراقبت نکرده اید ، نمی توانید شادی هایی که از برنامه نویسی حاصل می شود را تجربه کنید. اگر برنامه نویسی را به عنوان یک آسیاب در جایی می بینید که می خواهید نتیجه ای را به آسانی به دست بیاورید ، هرگز برنامه نویس موفقی نخواهید بود.
جشن گرفتن برنده های خود را: هر وقت مشکلی را که با آن دست و پنجه نرم کرده اید حل کنید ، هر چقدر هم که کوچک باشد ، همیشه به موفقیت خود افتخار کنید ، استراحت کنید و به خودتان بخاطر کاری که انجام داده اید تبریک می گویم. بگذارید احساس موفقیت غرق شود و شما را برای مشکل بعدی که با آن روبرو هستید ، انرژی بخشد.
5 | نسبت به یادگیری و درک بی صبرانه
اگر نسبت به یادگیری بی تاب هستید و انتظار دارید همه چیز را سریع و بدون زحمت تسلط کنید ، هرگز در برنامه نویسی واقعاً موفق نخواهید شد.
ما به عنوان انسان موجودات محدود هستیم. حتی اگر دنیای ما سریعتر و سریعتر حرکت کند ، و رایانه ها دلیل اصلی این امر هستند ، ما فقط می توانیم به همان سرعت ممکن حرکت کنیم. مغز ما با سرعتی معین کار می کند و بسته به گذشته ، اعتقادات ما ، حالات عاطفی ما ، سلامتی ما ... همه ما با سرعت های مختلف یاد می گیریم و یکپارچه می شویم.
دنیای فناوری مانند اقیانوس وسیعی است. شما هرگز به انتهای آن نخواهید رسید ، هرگز به جایی نخواهید رسید که استاد هستید و هیچ چیز دیگری برای یادگیری ندارید. اگر به خود اجازه دهید بیش از حد غرق شوید ، همیشه فشاری برای "تسخیر" احساس خواهید کرد و احساس می کنید که هرگز به اندازه کافی نمی دانید. اگر نتوانید آنچه را که می دانید بپذیرید و کمی بیشتر یاد بگیرید ، احساس خواهید کرد که به هیچ جا نمی رسید و تسلیم می شوید.
درعوض ، شما باید از سفر یادگیری برای خود لذت ببرید. هر دانش کمی که به دست می آورید یا مهارت جدیدی که به دست می آورید باید شما را هیجان زده کند. مانند حل مشکلات ، شما باید به خودتان احساس غرور بدانید که یک قدم به جلو برداشته اید ، حتی اگر کوچک باشد.
پیشرفت خود را تأیید کنید: چیزهای زیادی برای یادگیری وجود دارد و سفر برنامه نویسی هرگز به پایان نمی رسد. اما دانش تجمعی است ، پس به آنچه می دانید به آن افتخار کنید و اعتماد کنید که هر کوششی که در یادگیری خود انجام می دهید ، پایه و اساس محکمی از دانش را برای هر کجا که حرفه شما به شما می بخشد ، ایجاد می کند.
6 | از فکر کردن خسته / خسته می شوید
اگر در تفکر تنبلی داشته باشید و تفکر متمرکز و متمرکز را به عنوان یک کار اجباری ببینید ، هرگز در برنامه نویسی واقعاً موفق نخواهید شد.
برنامه نویسی یک فعالیت تفکر است. ما به عنوان انسان واقعاً در فکر کردن خوب هستیم ، اما واقعیت این است که حتی اگر ما به طور طبیعی تمام روز را صرف انجام آن می کنیم ، در فکر خود تنبل هستیم. اگر شما به آن عادت ندارید ، توانایی حفظ تلاش متمرکز و متمرکز بر روی یک مشکل واحد برای یک دوره زمانی دشوار است.
علائم این امر عبارتند از خیره شدن خالی از صفحه ، احساس ابر در افکار خود ، احساس تعویق در یک مشکل ، تلنگر بین زبانه های مرورگر ، و اسکن کردن StackOverflow برای "پاسخ". این نشانه هایی است که شما به یک محدودیت ذهنی رسیده اید و باید راهی را پیدا کنید.
در حین برنامه نویسی ، شما خسته می شوید و فکر می کنید به معنای واقعی کلمه انرژی بدن را مثل ورزش بدن ما می سوزاند. وقتی عادت ندارید انرژی ذهنی مورد نیاز خود را بکار بگیرید ، می توانید تمرکز خود را احساس کنید. اما این دقیقاً مثل رفتن به سالن بدنسازی است ، هرچه بیشتر این کار را انجام دهید ، قوی تر خواهید شد.
ذهن شما یک ماهیچه است: اطمینان داشته باشید که مغز شما مانند عضله است - هرچه از آن استفاده می کنید ، در تفکر بهتر و کارآمد تر می شود. هرچه قطعات را کنار هم قرار داده و مفاهیم ذهنی را توسعه می دهید ، کشف راه حل ها بسیار ساده تر می شود.
7 | ناتوانی در فکر کردن برای خودتان
اگر انتظار دارید دیگران برای شما فکر کنند ، و مایل نیستید که جزئیات وضعیت خود را بررسی کنید ، هرگز یک برنامه نویس واقعاً موفق نخواهید بود.
هنگامی که شما در حال یادگیری چیزهای جدید هستید ، به راحتی احساس می کنید که فاقد دانش و تجربه برای داشتن نظرات خود باشید. ابتکار عمل یا انجام دادن / گفتن کار اشتباه ، خطرناک به نظر می رسد.
ترس ذاتی همه ما از اشتباه بودن وجود دارد. هنگامی که این ترس از اشتباه ، اکتشاف و کنجکاوی شما را مهار می کند ، شما توانایی رشد دانش واقعی ، دانش را که از تجربه و "شکست" حاصل می شود ، خنثی می کنید. هنگامی که شما نیاز به تکیه بر نظر "گورو" ، یک وبلاگ نویس محبوب ، بهترین تمرین یا پاسخ "کتاب درسی" دارید ، در واقع دانش کار برنامه نویسی را یکپارچه نکرده اید.
شما باید نظرات خود را در مورد کارهایی که انجام می دهید و آنچه که انجام نمی شود ، ایجاد کنید. شما باید درک کنید که چرا فکر می کنید راه حل شما مؤثر است و فواید آن چیست. شما باید یک چشم انداز ظریف را توسعه دهید که فراتر از آنچه آشکار است ، باشد. باید بتوانید طرف خود را "استدلال کنید" ، و پس از آن اگر تغییر کنید ، می توانید دیدگاه جدیدی را که به دست آورده اید داشته باشید.
برای خود فکر کنید: از طریق تجربه و مهارت های تفکر انتقادی ، دیدگاه های خود را توسعه دهید. حدس های معقول را ایجاد کنید ، موضع گیری کنید و با افشای اطلاعات جدید حاضر به تغییر می شوید.
8 | تفکر سفت و سخت ، باریک و / یا بی نظم
اگر در فکر خود سفت و سخت هستید ، و در ساماندهی کد خود مشکل دارید - و با تمرکز افکار خود را سازمان یافته و متمرکز کنید ، هرگز در برنامه نویسی موفق نخواهید شد.
دو افراط وجود دارد که گاهی اوقات در دانشجویان می بینم. اولین رویکرد سفت و باریک به تفکر است. این نگرش از امتناع امتناع می ورزد ، و با وجود بازخورد ، تغییر نمی کند. چیزها فقط از یک منظر دیده می شوند ، و پیشنهادات نادیده گرفته می شوند.
دومین افراطی که من می بینم تفکر نامشخص است. به نظر می رسد دانش آموزان مسائل را پیچیده تر از حد ضروری می کنند ، کد آنها کثیف و سخت است که از آنها پیروی کنید. آنها مشکلات را برانداز می کنند و 100 خط کد را می نویسند ، وقتی 10 مورد کافی باشد.
وقتی این دو ذهن با هم ترکیب شوند ، نتیجه یک رویکرد صعودی برای برنامه نویسی است ، مانند یک رویکرد نیروی بیرحمانه که منجر به لایه ها و لایه های رفع و "هک" می شود. آنچه مورد نیاز است توانایی برگشت به محلول ، ارزیابی مجدد از آن ، کنار گذاشتن رویکرد اولیه و سازماندهی مجدد است.
عدم مشاهده سایر امکانات یا دریافت بازخورد مانع از رشد و پیشرفت می شود. بی نظمی بودن شما را کند می کند و مانع از دیدن الگوی هایی می شود که در غیر این صورت آشکار خواهد بود. و از کیفیت کلی کار شما کاسته می شود.
تأمل در خود: باید قدمی به عقب بردارید ، و به تصویر بزرگتر نحوه نزدیک شدن به امور نگاه کنید. چگونه می توانید این کار را بهتر انجام دهید؟ آیا کاری برای انجام زندگی تان آسانتر است؟ چه چیزی گمشده اید که می تواند به شما کمک کند؟
9 | به جای تشخیص طیف پاسخهای "خوب" و "بد" نیاز به پاسخ "درست" دارید
اگر هدف نهایی برنامه نویسی را پیدا کردن راه حل مناسب و نه طیفی از راه حل ها می دانید ، هرگز به عنوان یک برنامه نویس موفق نخواهید شد.
دانش آموزان هنگام شروع یادگیری مهارت ها یا برنامه نویسی ، می خواهند بدانند که آیا کاری که انجام داده اند "درست" است. جواب همیشه "این بستگی دارد"
علوم رایانه علمی برای ارزیابی معاملات است. با توجه به شرایط مختلف ، کدام یک مسیر بهتری خواهد بود؟ همه اینها به شرایط و اهداف بستگی دارد. وقتی برنامه نویسی را به عنوان یک آزمون با جواب درست یا با جواب اشتباه می بینید ، از تصویر بزرگتر چشم پوشی می کنید و خلاقیت خود را رها می کنید. اگر بتوانید با توجه به شرایطی که دارید ، آن را توجیه کنید ، می تواند "درست" باشد.
واقعیت این است که برنامه نویسی بیشتر شبیه نوشتن شعر یا داستان کوتاه است (یا در صورت بزرگ بودن برنامه ، رمان های بالقوه). زیبایی و زیبایی وجود دارد که در کد شما دیده می شود و گاهی اوقات فقط توسط شما و دیگر برنامه نویسان قابل تشخیص است. دلایلی که در مورد راه حل خود تصمیم گرفتید و نحوه درک پاسخ خود از "راه درست" یا "روش اشتباه" مهمتر است. داشتن ذهن یک هنرمند به شما امکان می دهد تا با گزینه ها و امکانات بازی کنید ، نه اینکه فکر کنید تنها یک راه وجود دارد. این زیبایی برنامه نویسی است ، روش های زیادی برای حل یک مشکل وجود دارد و در نظر گرفتن امکانات مختلف باعث می شود این احساس به وجود بیاید که کدام راه برای وضعیت بهتر است.
10 | عدم توجه دقیق به جزئیات
اگر به جزئیات بپردازید و از چیزهای کوچک غافل شوید ، هرگز یک برنامه نویس واقعا موفق نخواهید بود.
رایانه ها دستگاه های دقیقی هستند. هنگامی که نوبت به برنامه نویسی رایانه می رسد ، باید دستورات لازم را دقیقاً به روشی که یک کامپیوتر انتظار دارد ارائه دهید. اگر این کار را نکنید ، هیچ کاری مؤثر نخواهد بود. وجود وسط جایی نیست که بیشتر کارها باشد - یا این کار را می کند یا نمی کند.
این بدان معناست که هنگام برنامه نویسی باید به جزئیات توجه کنید. هر فضا ، براکت یا نیم کلنی حساب می شود. وقتی از جای خود خارج شوید ، هیچ چیز کار نخواهد کرد. هنگامی که کامپیوتر پیام خطایی را برگرداند ، باید بتوانید به آن پیام نگاه کنید و دقیقاً آنچه را که به شما می گوید را بفهمید. و واقعیت این است که اگر جزئیاتی از این دست را از دست می دهید ، می توانستید ساعت ها برای ردیابی مشکلی صرف کنید که به معنای واقعی کلمه نتیجه یک تایپی بود.
همانطور که می گویند شیطان در جزئیات است. و این قطعاً برای برنامه نویسی صادق است.