با سلام
می خواستم ببینم راه حرفه ای شدن در کد نویسی چیه؟
غیر از خوندن کتاب و نوشتن برنامه راه لازم دیگه ای داره ای؟
چون من خیلی ها رو دیدم کتاب خوندن و برنامه ام زیاد نوشتن ولی هیچ وقت در این کار حرفه ای نشدن
ممنون
Printable View
با سلام
می خواستم ببینم راه حرفه ای شدن در کد نویسی چیه؟
غیر از خوندن کتاب و نوشتن برنامه راه لازم دیگه ای داره ای؟
چون من خیلی ها رو دیدم کتاب خوندن و برنامه ام زیاد نوشتن ولی هیچ وقت در این کار حرفه ای نشدن
ممنون
بعضی وقتا کمی سرمایه ، پشتیبان (کسی که بهت روحیه بده) و راهنما (مثل خیلی از دوستان همین انجمن) تاثیری شگرفی داره .نقل قول:
کتاب و تمرین هم که اصل کاره !
بهتره براي تمرين يه مدتي به اين فكر كني كه چطوري بنويسي نه اين كه چي بنويسي
تو اين زمينه LINQ و Threading هم كمك ميكنه
(البته اينا فقط نظر من بود!)
این دوتا چی بیده :10:نقل قول:
سلام دوست من.
من زیاد تو این زمینه کار نکردم ولی اگه میخوای سریع نویسی و با کد کمتر به جواب برسی:
باید به گونی ای تمرین کنی که مثلاً یه برنامه رو به چند روش کد نویسی بنویسی مثلاً تو یه برنامه ای مثل ماشین حساب رو که مینویسی میتونی اونو به چند روش در کد نویسی بنویسی که همه روش ها باهم فرق میکنه اونوقت به همه کدها نگاه میکنی و میبینی با کدوم روش بهتر میتونی بنویسی.
اگه به همین روش تمرین کنی (البته روش های دیگه هم هست) میتونی به نتیجه برسی.
با تشکر.
ممنون از نظر شما دوستان واقعا همه ی نظرات کاربردی و عالی بود
منظورم البته فقط تو برنامه های پیچیده نیست. حتی تو کد های چند خطی ام کاملا تفاوت 1 برنامه ی حرفه ای و معمولی حتی با 1 نگاه مشخص میشه.
حالا دیگه چه برسه به برنامه نویسی برای 1 سیستم بزرگ. دیگه اون جا واقعا خط به خط هم اهمیست پیدا می کنه.
مهمترین چیز همون طور که خودت گفتی تمرین و مطالعه ست. اما انتخاب درست مسیر هم خیلی مهمه. به نظر من تکنولوژی و مسائلی مثل Threading یا LINQ فرعیاته. ممکنه یکی اینا رو ندونه اما حرفه ای باشه، ممکنه ام یکی اینا رو بلد باشه ولی افتضاح برنامه بنویسه.
کد خوانا نوشتن، کد قابل نگهداری نوشتن، کد قابل نگهداری نوشتن، رعایت کردن استانداردها، توانایی حل مسئله، دیباگ کردن، خوندن کد بقیه ... چیزایی هستن که برنامه نویس خوب رو از بقیه متمایز می کنن.
کد:http://www.google.com/search?q=how+to+write+good+program
بهترین راه درک مفاهیم است، شما اول باید جزئیات عملکرد کامپیوتر رو در حد امکان بیاموزی بعد یه کمی با زبان های سطح پایین کار کنی بعد بری سراغ زبان های سطح بالا.........
سوال و جواب
تا سوالی نباشه جوابی هم وجود نداره و کسی موفق تره که سوال های بهتری بپرسه
همین تاپیکی هم که شما زدید سوالتون بوده و بخاطر یافتن پاسخ این مساله سوال کردید پس سوال کردن و بدنبال جواب رفتن بهترین کار است وگرنه اگر خودم 100 تا کتاب هم بخونم ولی سوالم نباشه به زودی همه ی مطالب از یاد میبرم تمرین کردن هم نوعی سوال و جواب کردن هست :)
به نظر من فرق یک برنامه نویس آماتور و حرفه ای، روش پیاده سازی هست نه برنامه نویسی. به اینصورت که یک برنامه نویس حرفه ای، ابتدا صورت مساله رو تو ذهتش بطور کامل ارزیابی میکنه، بعد شروع به تهیه الگوریتم و فلوچارت بر روی کاغذ میکنه. بعد از اتمام اینا، شروع به تحقیق می کنه که برای این مساله چه زبانی، چه سیستم عاملی و چه ابزارهایی لازمه و در تمام مراحل هم به صورت دقیق و اصولی تمام مطالب رو Document میکنه.
بعد از انتخاب ابزارهای مناسب، شروع به نوشتن Pseudo-code یا شبه کد میکنه و پس از اینکه در حد بالایی از صحت برنامه مطمئن شد، اونرو سریع تبدیل به Code میکنه. در طول برنامه هم به صورت کامل Comment میذاره و سعی میکنه کد خوانا باشه. اینها دقیقا اصول مهندسی نرم افزار هست که در دانشگاهها هم تدریس میشه.
مسائل دیگه از قبیل تکنیکهای افزایش سرعت مثل Multi-threading یا تشخیص Memory Leak که باعث گرفتن حافظه و آزاد نکردن اون میشهو در آخر تکنیکهای Debugging بعد از اینها که گفتم میان.
همه اینا در حالیه که برنامه نویس آماتور یا حتی مهندس بیسواد(با این بهانه که این کارا وقت تلف کردنه)، بلافاصله میشینه پست کامپیوترش و شروع به کد نوشتن میکنه. بعضی از اوقات هم کارش زودتر از برنامه نویس حرفه ای تمام میشه، اما کدی که نوشته، کد پرباگ و غیر قابل اطمینان هست و هیچکس غیر از خودش ازش سر در نمیاره و تغییر تو اونهم تقریبا غیر ممکنه.