زبان انگلیسی , یک ضرورت یا نه؟
با سلام
بنده بارها شنیدم که برای پیشرفت در برنامه نویسی باید دو چیز رو داشته باشیم.1- خلاقیت در برنامه نویسی 2-زبان انگلیسی قوی
اما سوال من اینجاست که چه ضرورتی برای دانستن زبان هست؟ به عنوان مثال زمانیکه وارد بازار کار بشیم و در یک شرکت فعالیت خودمون رو شروع بکنیم قطعا همکاران ما فارسی زبان هستند و برای نوشتن کد هم نیازی به دانستن زبان نیست (البته به نظر بنده). پس چرا اگر زبان خوبی نداشته باشیم نمیتوانیم پیشرفت خوبی هم داشته باشیم؟ آیا اصلا چنین جمله ای درست است؟
برداشت من از پاسخ های دوستان
برداشت من از پاسخهای دوستان این شد که :اگر زبان رو خوب بلد باشیم که چه بهتر "چون که صد آید نود هم پیش ماست" , اما برای پیشرفت در زمینه برنامه نویسی باید در حدی تسلط داشته باشیم که بتوانیم با سایتها و مقالاتی که برای پیدا کردن اطلاعات بیشتر به آنها نیاز است به خوبی ارتباط برقرار کنیم وبرداشت صحیح و کاملی از آن پیدا کنیم .برای مثال زمانیکه برای پیدا کردن راه حلی به سایت stack overflow مراجعه میکنیم بتوانیم به راحتی مشکل خود را حل کنیم. در کل نیاز ما براین است که درک مطلب بالایی داشته باشیم نه این که مکالمه خوبی داشته باشیم.




زبان انگلیسی در چنین مواقعی کاربرد داره:
- یافتن سلوشن و حل مشکلات در برنامه نویسی
- یافتن مقاللت معتبر و مهم
- ...
خلاصه برای پیشرفت جزو ضروریاته
این رو هم بگم که بهتره با "زبان تخصصی" پیش بریم

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

با سلام!
در مورد دونستن زبان انگلیسی و ضرورتش در برنامه نویسی موارد زیر رو باید یادآوری کنم.
- دونستن معنی کلمات انگلیسی و فلسفه انتخاب اونها به عنوان دستورات برنامه نویسی:
چون دستورات زبان برنامه نویسی به زبان انگلیسی هست پس حداقل در سطح دستورات زبان برنامه نویسی باید معنی این کلمات انگلیسی که به عنوان دستور بکار میرن رو بلد باشید. مثلا باید بدونید که کلمه Intent یعنی چی و چرا این کلمه برای اون منظور انتخاب شده. یا مثلا کلمه Inflate یعنی چی؟ یا مثلا کلمه Pakage یعنی چی؟ یا مثلا کلمه Activity یعنی چی؟ یا مثلا کلمه Pars یعنی چی؟ منظورم این نیست که در محیط برنامه نویسی بدونیم که این دستورات چی کار میکنن اون که درش حرفی نیست. ولی کلا جدای از محیط برنامه نویسی خود معنی کلمه رو در انگلیسی بدونیم و بفهمیم که برای اون دستورات چرا اون کلمات انتخاب شده و کلمه دیگه ای انتخاب نشده؟ دونستن معنی کلمات در دنیای برنامه نویسی و کدنویسی خیلی میتونه کمک کنه. یا مثلا کلمه Stream به چه معنی؟ من بطور مثال معنی این کلمات رو در مترجم گوگل نگاه کردم و برام خیلی جالب بود مثلا:
Intent: قصد، نیت، هدف
Activity: فعالیت
Package: بسته، قوطی
Parse: تجزیه کردن (جمله) و
Inflate: باد کردن و پف کردن
Stream: جریان بدون توقف از هر چیزی (مثل نهر، رود)و
با تمرکز روی معنی کلمات مسلما کدنویسی خیلی با معنی تر و راحت تر میشه. مثلا وقتی برنامه اجرا میشه هر صفحه برنامه بعنوان یک فعالیت در نظر گرفته میشه و هر فعالیت میتونه دارای یک قصد و نیتی باشه مثلا هدف از انجام یه فعالیت میتونه دیدن یه صفحه وب باشه و یا پخش یه موزیک باشه و یا مثلا ارسال پیامک باشه. همچنین inflate به معنی باد کردن و پف کردن رو میشه اینجوری تفسیرش کرد که صفحه اصلی Ui یک برنامه صاف و تخت هستش و وقتی که یک منو یا چیز دیگه ای رو به این صفحه برنامه میخواهیم اضافه کنیم این المان ها حالت باد شدن دارند که به صفحه اضافه میشن مثل نان لواش خودمون که قبل از تنور حالتش صاف و تخت هست و بعد از بیرون آمدن از تنور بعضی از قسمتها حالت پف کرده دارند شاید اون پفها رو شبیه المانهایی که به صفحه برنامه اضافه میکنیم بشه در نظر گرفت. و در مورد stream هم میشه دقیقا مثال جریان رود رو زد. رود جریان آب بدون توقف هست. اگه جریان آب متوقف بشه دیگه اسمش رود نیست. پس رود خودش یه نوع stream هست که دائم در حال جریان هست. حالا در دنیای کامپیوتر هم به جریان اطلاعات که در حال رد شدن از یک مدیا هست رو stream میگن. و خیلی مثالهای زیاد دیگه که در باره هر یک از کلمات مورد استفاده در کدنویسی میشه استفاده کرد. و نکته دیگه اینکه شما در دنیای برنامه نویسی لزومی نداره حتما کلمات تخصصی پزشکی رو معنی اش رو بلد باشی یا مثلا کلمات تخصصی حقوق را معنی ایش رو بلد باشی هر چند دونستن اونها هم وقتی که برنامه نخصصی در اون زمینه می نویسید مفید خواهد بود.
- انتخاب کلمات مناسب برای نامگذاری متغیرها و متدها و ....:
مسلما در محیط برنامه نویسی و کدنویسی مجبور به انتخاب کلمات هستیم. مثلا نیاز به یک متغیری داریم. و یا نیاز به یک متد داریم. خوب باید اونها رو نامگذاری کنیم تا بتونیم براشون کد بنویسیم. حالا در نامگذاری کدوم بهتر هست استفاده از کلمات انگلیسی مناسب و یا استفاده از روش فینگلیش. فرض کن در مورد رقص نور میخواهیم یک برنامه بنویسیم. بهتره از کلمه LightDance استفاده کنیم و یا از کلمه RaghseNoor . یا مثلا یک متد برای این برنامه میخواهیم بنویسیم بعنوان شروع کننده. بهتره از کلمه Start استفاده کنیم یا از کلمه Shorooa. یک برنامه نویس حرفه ای همیشه از کلمات انگلیسی برای کدنویسیش استفاده میکنه مخصوصا اگه در یک کار تیمی در حال کدنویسی باشه. در اینجا هم لازمه که یه حداقلی از زبان و کلمات انگلیسی مسلط باشیم.
- ضرورت انگلیسی هنگام جستجو بدنبال رفع اشکال و خطایابی و پیداکردن کدهای مناسب از اینترنت:
فرض کنید که در حین کار برنامه نویسی و کدنویسی تون به مشکل برخوردید و بدنبال راه حلش در اینترنت میگردید. حالا به نظرتون این جستجو رو به زبان پارسی انجام بدین بهتر و سریعتر به نتیجه می رسید و یا به زبان انگلیسی. البته شاید جستجو به زبان پارسی هم یک سری اطلاعات براتون بیاره ولی خودتون میدونید که منابع اصلی به زبان انگلیسی هستند. پس بهترین کار جستجو به زبان انگلیسی هست. خب برای اینکه در مورد یک مطلب به زبان انگلیسی جستجو کنید آیا نباید یک حداقل اطلاعات در مورد زبان انگلیسی در اون مورد داشته باشید؟ علاوه بر اون فرض کنید جستجو رو انجام دادین حالا یا به زبان پارسی و یا به زبان انگلیسی و در نهایت به یک منبع انگلیسی رسیدین و لازمه که متن رو که به انگلیسی هست بخونید و متوجه بشید که چی گفته و چه راه حلی ارائه داده آیا برای خوندن یک متن انگلیسی و درک مطلب درست و صحیح از اون نباید یک حداقل اطلاعات از زبان انگلیسی داشته باشین. یک جایی در همین سایت یادم هست که از قول استاد خوندم که ایشون هیچ کلاس زبانی نرفتن و مکالمه اشون ضعیف هست ولی درک مطلب بالایی دارند با خوندن یک متن انگلیسی مثل زبان مادری متوجه میشن که متن چی میگه. و همه اش هم به خاطر تمرین و مطالعه و ممارست زیاد در مطالعه متون انگلیسی هست.
پس اگه واقعا قصد دارین در دنیای برنامه نویسی و کدنویسی سیر و سیاحت کنید چاره ای جز دونستن زبان انگلیسی در حد لزوم و مورد نیاز ندارید. روی حد مورد نیاز تاکید میکنم. لازم نیست که در انگلیسی تافل گرفته باشین و یا استاد تمام باشین. باید حداقل ها رو بلد باشین. و یک کدنویس بمرور زمان حین کارش متوجه میشه که این حداقل ها چی هستن و اتوماتیک اونها رو یاد میگیره.

چه فرقی بین دکتر و مهندس های ایرانی با دکتر و مهندس های خارجی هست؟
چقدر فرق بین پراید با BMW هست ؟
همونقدر فرق بین برنامه نویسای خارجی با برنامه نویسای صرفا داخلی هست!
شما چه بخوای چه نخوای برای پیشرفت و کسب اطلاعات جدید نیاز به زبان انگلیسی دارید به خصوص در مورد برنامه نویسی که سرعت پیشرفت در اون زیاد هست و اطلاعات در اون روز به روز آپدیت میشه و اگه چند سال بزارید کنار ممکنه اطلاعتتون منسوخ بشه و اصلا به کار نیاد.
شما استاد رو نبین که از استثناها هستن و انگشت شمار هست تو ایران مشابه ایشون .که صد البته ایشون هم اطلاعاتشون رو بیشتر از سورسهای خارجی کسب کردن.
همونطور که دکتر و مهندسهای موفق هم تو ایران به اطلاعات دانشگاهیشون و فارسیشون اکتفا نکردن !
در پایان برای زبان عمومی من دو تا کتاب معرفی میکنم که برای افرادی که زبانشون متوسط هست و میخوان اصولی یاد بگیرن موثر هست:
قواعد: grammar in use (سطح متوسطه)
لغت : oxford word skills (هر سه سطح)
هر کی اینا رو بخونه دیگه پایه اش به درستی به نظرم شکل گرفته و نیاز به کتاب دیگه ای نداره (یعنی لازم نیست بری صدتا کتاب لغت و گرامر دیگه هم بخونی) و از اون به بعد دیگه هر چی بیشتر با انگلیسی زبانها ارتباط داشته باشی زبونت قوی تر میشه .حالا یا از طریق فروم ها یا فیلم یا چت و یا حتی بازی!
مثلا من خودم دو سال پیش تو سرور خارجی تراوین بازی کردم و جز اتحادهای خوب هم شدیم .باور کن زبانم قبل و بعدش یه لول ارتقا پیدا کرد و هنوز با اعضای اون اتحاد از طریق فیسبوق ارتباط دارم.
چیزی که مهم هست ارتباط هست. (دو تا کتاب برای شکل گیری پایه بیشتر لازم نیست)
زبان تخصصی هم با فعالیت در فروم های تخصصی خارجی و خوندن مقالات مربوطه خود به خود تکمیل میشه.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .