۱۲ حقیقت در مورد برنامه نویسی که همه باور دارند

درخواست مشاوره

۱۲ تصور غلط شایع در حوزه تکنولوژی

یک.شما حتما یک کدنویس آماتور هستید

احتمالا این بزرگ ترین تصور غلط است. رسانه های جهت سازی برنامه نویسی را با اعتبار بدی تعریف می کنندو حتی بعضی از مردم از داشتن این کار شرمسار هستند و می ترسند به عنوان یک کدنویس آماتور برچسب زده شوند. واقعیت این است که،مانند خیلی از شغل های دیگر تنوع زیادی از مردم در هر کاری وجود دارد.حتی میشه اینطور گفت که برنامه نویسان متنوع ترین گروه هستند، به وضوح به این دلیل که تعداد آنها هرروز بیشتر می شود پس قرار دادن همه ی آنها در یک دسته غیرممکن است.

دو.شما باید یک ریاضیدان با استعداد باشید

هرچند این گفته ۱۰۰درصد درست نیست ولی همچنان نمیتوانیم آن را کاملا اشتباه فرض کنیم.ارتباط بین برنامه نویسی و ریاضیات در این حقیقت بازتاب دارد که در هر دوی آنها نیاز به تفکر منطقی است تا بتوان به یک راه حلی قطعی دست یافت.

آنچه گفته شد به این معناست که شما نیاز دارید از ریاضیات استفاده کنید،ولی فقط جبر پایه و نه چیزی خیلی پیشرفته و سخت.توسعه دهندگان وب باید مجموعه ای از مهارت هارا داشته باشند.با تمام اینها ،هدف برنامه نویسی نوشتن کد است،نه حل کردن مسعله های ریاضی.

اگر ناچارا در قسمتی از کدنویسی مجبور به استفاده از معادلات پیچیده ریاضی شدید،نباید ناامید شوید،چون برنامه های کمکی زیادی در قالب کتابخانه ها در دسترس است،که شما می توانید بجای نوشتن آن قسمت از کد،در چرک نویس از آن استفاده کنید.

نابلد بودن در ریاضیات به این معنا نیست در برنامه نویسی خوب نخواهید بود.همانطور که عالی بودن در ریاضیات بمعنای یک برنامه نویس عالی بودن نیست.

سه.شما نیاز به سطح هوشی MENSA-Caliber دارید.(بالاترین سطح هوشی در جهان)

اگر این حقیقت داشت هر برنامه نویسی باید یک عضو از این گروه باشد.درحالی که اینطور نیست.یادگیری کد نویسی می تواند شبیه یادگیری نواختن گیتار باشد.موضوع فقط استعداد نیست،بلکه به سخت کار کردن شما برای تسلط یافتن نیز بستگی دارد.لازم نیست در مورد میزان هوش تان یا چیزهای دیگر کاری کنید.

در برنامه نویسی نیاز دارید خلاق باشید و به دنبال راه حل برای مسئله ها بگردید.چیزی که هرکسی در بهره هوشی خود دارد. زبان برنامه نویسی همانطور که اسمش نشان می دهد،زبان هستند و این بدین معناست که اگر شما توانستید زبان خودتان یا زبان خارجه را یاد بگیرید همینطور هم می توانید کدنویسی را یادبپیرید.زبان هایی مثل جاوا ،c،c++ و پایپتون توسط آدم فضایی ها از یک سفینه دیگر درست نشده اند بلکه افراد معمولی آن را ساختند.

چهار.می توان زبانی را بعنوان بهترین زبان برنامه نویسی انتخاب کرد

برخلاف زندگی روزمره ،وقتی حرف از برنامه نویسی ست،نمی توان گفت بهترین زبان کدام است.برای اینکه هر زبان برنامه نویسی برای دستیابی به هدف خاصی نوشته شده است.

به سادگی می توان گفت اگر یک زبان برنامه نویسی شمارا به آنچه می خواهید انجام دهید برساند و متناسب با هدفتان باشد،بهترین انتخاب شماست،برای مثال اگر شما علاقه مند به زبان سطح پایین و کدنویس سیستم عامل هستید، در این صورت زبان اسمبلی بهترین انتخاب برای شماست.و اگردرحال ساختن برنامه هستید، می توانید از جاوا،c++،c# استفاده کنید.

اینکه کدامیک از این سه برنامه بهترین انتخاب است کاملا به شما و مسئله ای که در حال حل آن هستید بستگی دارد.

هشت.شما برای یادگیری کد نویسی پیر هستید.

از جهتی دیگر شما هرگز برای یادگیری کدنویسی پیر نیستید.در حقیقت،کسانی که الان توسعه دهندگان برنامه هستند، باید تا آخر عمر به کدنویسی ادامه دهند،چون آی تی و برنامه نویسی از جمله رشته های پویا هستند.

این به این معناست انها باید تا زمان بازنشستگی ادامه دهند.اگر آنها می توانند این کار را کنند پس شما هم می توانید.اگر علاقه مند باشید سن فقط یک عدد است.

نه.هزاران خط برای کد نویسی بسیار زیاد است.

ا گر شما به برنامه نویسی علاقه مندید یا قصد شروع این کار را دارید،نگاه انداختن به کدهای منبع که۱۰۰۰۰ خط دارند بشدت ترسناک بنظر می رسد یا کاملا غیر ممکن است.ولی خوشبختانه اینطور نیست.

اگر نگاه دقیق تری به همه ی کد ها بیاندازید متوجه می شوید بخش هایی تکراری هستند و کدنویس قسمتی از کدهارا بارها در جاهای مختلف استفاده کرده است.بنابراین هزار خط کد مختلف نیست.

جزیی ترین و همچنین پرچالش ترین برنامه نویسی ها از ترکیب همان کدهای جزیی که در شروع یادگرفته اید انجام می شود.به محض اینکه این کدهای جزیی را یاد گرفتید،نوشتن هزاران خط کدنویسی برایتان راحت ترین کار در جهان خواهد بود.

ده.سال ها طول می کشد تا یک زبان برنامه نویسی یاد بگیرید.

یاد گرفتن یک زبان برنامه نویسی زمان و تلاش زیادی می برد و پروسه یادگیری هرگر تمام نمی شود.ولی برای فهمیدن و استفاده از دستورات وتوابع یک زبان خاص نیاز به زمان خیلی زیاد(مثلا سال ها) ندارید.چون همه دستورات ،در بیشتر قسمت ها، به زبان انگلیسی هستند.

کار بعدی که باید انجام دهید، یاد گرفتن گرامر است.این کار بیشتر شبیه یادگرفتن قوانین یک زبان خارجه است.این کار از یادگیری دستورات و توابع زمان بیشتری می برد.مخصوصا اگر برنامه نویسی را با یک زبان سطح پایین اسمبلی انجام می دهید و با رجیستر سروکار داریدولی دوباره یادآور می شویم این غیرممکن نیست!به محض اینکه بر گرامر مسلط شوید آماده اید.البته به این معنا نیست که کار تمام شده است ولی می توانید خودتان کدهایی بنویسید و برنامه ای را توسعه دهید.

پس وقتی نگاهی به بازه زمانی می اندازید به این نتیجه می رسید که نیاز به کار سخت چند ماهه هست نه سالها.

یازده.سال ها طول می کشد تا بتوانید به درآمد یک برنامه نویس برسید.

همانطور که اشاره کردیم ،یاد گرفتن برنامه نویسی سال ها طول نمی کشد و همچنین کسب درآمد با مهارت های کدنویسی نیاز به سال های زیادی ندارد.البته نباید انتظار داشته باشید با یا گرفتن c++، یک ساله شغلی در مایکروسافت پیدا کنید،ولی شغل های دیگری هستند که با توجه به مهارت ها و سطح تجربه تان برایتان مناسب خواهد بود.کار در بعضی جاها نیاز به تجربه دارد که شما ندارید،پس بخاطر نداشتن تجربه نمی توانید در آنجا شاغل شوید.برای شروع یک کار ،دوره انترنتی شاید ایده خوبی باشد.

اینگونه علی رغم مسایل مالی ،میتوانید تجربه هم بدست بیاورید،به اضافه اینکه همیشه شانسی وجود دارد که استخدام تمام وقت شوید.همچنین همیشه میتوانید تلاش کنید مستقل شویدو مشتری های خودتان را پیدا کنید،که راه بدی برای بدست آوردن پول نیست.

بعضی مردم دوست دارند در خانه راحتشان کار کنند و از ساعات کاری انعطاف پذیر لذت ببرند.این دلیل افزایش کدنویسان است که این مسیر را برای زندگیشان انتخاب کرده اند.

دوازده.ساعات زیادی طول می کشد.

ما اصلا نباید نگران این مورد باشیم،ولی هستیم.برنامه نویسی به زمان و تلاش زیادی نیاز دارد ولی قانونی ندارد.حتی کدنویسانی که ساعات زیادی کار می کنند،پاداش خوبی برای تلاششان می گیرند و شکایتی از آنها نمی شنوید.البته می توانید مستقل شوید و برای خودتون ساعت کاری و سرعت کار تنظیم کنید.

اگر همه ی این باورها درست بود،تعداد کمی حاضر بودند برنامه نویس شوند.درحالی که خلافش درست است.قطعا برنامه نویسی شغلی در آینده است و شما می توانید بدون در نطر گرفتن سن،جنسیت،مقام یا سطح هوشی قسمتی از این آینده باشید.

همه ی اون چیزی که نیاز هست کار سخت و شوق به آموختن هست.و این چیزیه که کاری با هیچکدوم از دسته بندی های بالا نداره.

مقالات مرتبط

کاور بلاگ _tailwind چیست
Tailwind CSS یک ابزار قدرتمند و مدرن است که به توسعه‌دهندگان وب امکان می‌دهد به سرعت و با کارآیی بالا، وبسایت‌ها و برنامه‌های وب را طراحی و پیاده‌سازی کنند. این فریمورک بر اساس ایده‌آل‌هایی از جمله اصول Atomic CSS و Utility-first طراحی شده و کمک می‌کند تا با استفاده از کلاس‌های تعریف شده، به سرعت و با دقت بالا، ویژگی‌های ظاهری و تغییرات استایلی را در صفحات وب خود اعمال کنید. در این مقاله، به بررسی اصول، ویژگی‌ها و کاربردهای Tailwind CSS پرداخته خواهد شد و با مزایا و چگونگی استفاده از آن آشنا می‌شوید.
کاور بلاگ _ant design چیست
در دهه گذشته، با پیشرفت سریع تکنولوژی و توسعه نرم‌افزارها، طراحی و تجربه کاربری به یکی از ارکان اساسی توسعه وب تبدیل شده است. یکی از چالش‌های مهم در این زمینه، ایجاد رابط‌های کاربری زیبا، کارآمد و قابل اطمینان است. Ant Design به عنوان یک چارچوب طراحی سیستمی بر پایه React و Angular، به توسعه‌دهندگان کمک می‌کند تا به سرعت و با کیفیت به ساخت رابط‌های کاربری حرفه‌ای بپردازند. در این مقاله، به بررسی اجمالی از Ant Design و ویژگی‌ها، مزایا و کاربردهای آن خواهیم پرداخت.
کاوربلاگ_ Micro Frontends چیست؟
Micro Frontends یک رویکرد نوظهور در توسعه وب است که به منظور بهبود قابلیت انعطاف و مدیریت پروژه‌های وب توسط تیم‌های مختلف توسعه دهنده طراحی شده است. به کمک این مفهوم می‌توان شکاف بین توسعه میکروسرویس‌های پشت سرور و رابط کاربری را کاهش داد. همچنین به توسعه‌دهندگان این امکان را می‌دهد تا بخش‌های جداگانه از یک وب‌اپلیکیشن را به عنوان میکروفرندانت‌ها مدیریت و ادغام کنند. در این مقاله، ما به بررسی اصول و مزایای Micro Frontends خواهیم پرداخت و چگونگی پیاده‌سازی آن در پروژه‌های واقعی را بررسی خواهیم کرد.
کاوربلاگ_ طراحی محصول چیست؟
طراحی محصول به عنوان یک عامل مهم در توسعه و پیشرفت صنایع و بازارهای جهانی شناخته می‌شود. این حوزه هنر و علم، فرآیندی گسترده و چندجانبه است که با بهره‌گیری از دانش‌های مختلف از جمله مهندسی، طراحی صنعتی، روانشناسی مصرف‌کننده و فناوری، به ایجاد محصولاتی نوآورانه و عملی می‌پردازد.
کاور بلاگ _نقشه راه بک اند
در دهه اخیر، توسعه وب به سرعت گسترش یافته و باعث شده است که تعداد زیادی از افراد به دنبال فرصت‌های یادگیری و بهبود مهارت‌های خود در زمینه‌های بک‌اند (Backend) و فرانت‌اند (Frontend) باشند. اگرچه یادگیری بک‌اند امور مربوط به سمت سرور و پردازش داده‌ها را در بر می‌گیرد، اما تأثیر فرانت‌اند به عنوان واسط کاربری نقش بسیار مهمی در تجربه کاربری و تعامل با کاربران دارد. در این مقاله به بررسی "نقشه راه یادگیری بک‌اند" و همچنین چگونگی ارتقاء مهارت‌های بک‌اند در کنار فهم عمیقی از فرانت‌اند می‌پردازد. این نقشه راه نه تنها به توسعه‌دهندگان حرفه‌ای امکان پیشرفت و تخصص در بخش بک‌اند را فراهم می‌آورد، بلکه به تازه‌واردان نیز راهنمایی جامعی برای شروع و تسلط بر این دو زمینه اصلی توسعه وب ارائه می‌دهد.
کاور بلاگ_ nest.js چیست
توسعه وب به سرعت در حال تحول است و فریم‌ورک‌ها و ابزارهای جدیدی برای تسهیل فرآیند توسعه نرم‌افزارهای وب ارائه شده‌اند. یکی از این فریم‌ورک‌های نسل جدید که توانسته است جذابیت بسیاری از توسعه‌دهندگان را به خود جلب کند، Nest.js است. Nest.js یک فریم‌ورک توسعه نرم‌افزارهای وب بر پایه‌ Node.js است که با استفاده از مفهومی به نام "وابستگی‌های تزریقی" (Dependency Injection) و الهام گرفته از Angular، توسعه ساختاری سازمان‌یافته و مدیریت پروژه را سهولت بخشیده است. در این مقاله به بررسی اصول و ویژگی‌های Nest.js می‌پردازیم.

درخواست مشاوره

درخواست مشاوره