images/sample/slideshow/logo-loading.png

تالار گفتمان

سوالات خود را جست و جو کنید و اگر جوابی نیافتید، با ایجاد یک بحث جدید، از دیگران راهنمایی بگیرید
چگونه برنامه نویس شویم ؟


مهم ترین معیار و فاکتورهایی که شما باید در نظر داشته باشید هدف،علاقه،دیدبرنامه سازی به موضوعات و ... میتونه باشه!!
اولین قدم برای برنامه ساز م.و.ف.ق شدن داشتن هدف وانگیزه مناسبه؛شماباید برای خودتون یک هدفی تعیین کنید و برای اون هدف تلاش کنید؛کسی که بی هدف وارد دنیایه برنامه سازی بشه خیلی خیلی دوام بیاره 6 ماه که زود زده میشه میره پی کسب و کارش!!!
افراد زیادی پیش من اومدن برای مشاوره درسی و برنامه نویسی؛وقتی از هرکدومشون پرسیدم که هدف چیه از برنامه نویسی 85% تو کما بودن که چی بگن!! بعضی ها هم گفتند که فلان شخص تو فامیلمون برنامه نویسی بلده منم میخوام یاد بگیرم روشو کم کنم !!
تنها تعداد کمی رو دیدم که هدفمند کار کنند و با برنامه ریزی درست جلو برند!
سال گذشته شخصی پیشم اومد گفت میخواد برنامه نویسی یاد بگیره و مونده که چطوری شروع کنه و خیلی هم علاقه نشون میداد به این موضوع؛ سوال ازش پرسیدم هدفت از اینکه میخوای برنامه نویس بشی چیه؟ پاسخی که داد خیلی جالب بود،با اینکه رشته کامپیوتر نبود (مهندسی کشاورزی میخوند) اما میگفت قصد دارم تا با یادگیری برنامه نویسی به جامعه مهندسین کشاورزی کمک کنم. واقعاً هدف خوبی در ذهن خودش داشت و با توجه به پشت کاری که داشت تونست زبان C# و AVR رو یاد بگیره و به کمک یک مهندس الکترونیک تونسته در زمینه کشاورزی صنعتی تو شمال کشور جزو نمونه ترین مهندسان باشه!!!
یادگیری زبان های برنامه نویسی به این سادگی نیست که شما بیاید بگید که خوب من امروز این زبان رو یاد میگرم بعدش همه چی حله همه کار میتونم انجام بدم!!
خیلی از دوستانی که برنامه نویسی انجام میدن میدونند چی میگم وقتی شروع به یاد گیری برنامه نویسی می کنی تا چند ماه اول هیچ کدی نمیتونی بزنی فقط و فقط کارت Copy & paste کردن کدهاست،اینجاس که از برنامه نویسی زده میشی و پیش خودت میگی برنامه نویسی برنامه نویسی که میگن این بود؟ نخواستم) دانشجوایان رشته کامپیوتر میدونند چی میگم یکیش خود من)
کسانی که در برنامه نویسی موفق می شوند که از این مرحله به خوبی رد بشند!
پس مهم ترین عامل م.و.ف.ق.ی.ت در برنامه نویسی داشتن هدف و انگیزه مناسبه!
قبل از شروع برنامه نویسی شما باید دید الگوریتمی داشته باشی،شما باید بدونی یه مسئله چطور ی حل میشه بعد بری سراغ کد زنی اون برنامه!! پس همه چی کد نویسی نیست! و برنامه نویس با برنامه ساز خیلی فرق میکنه؛برنامه نویسی بخشی از برنامه سازی هست!! شما در الگوریتم و فلوچارت میایی یه کارهای لازم برای حل یک مسئله رو قدم به قدم انجام میدی تا مسئله رو حل کنی !!پس شما باید اول دید الگوریتمی نسبت به موضوعات پیدا کنی بعد بری سراغ برنامه نویسی.شما باید بتونی وقتی مسئله پیچیده ای بهت داده میشه با دیدالگوریتمی ای که داری اون مسئله رو حل کنی یا اگر راه حلت اشتباه بود فوری راه حل بعدی رو پیاده سازی کنید.

بعد از این موضوع وقتی میخوایی وارد جو برنامه نویسی بشی باید یه زبان برنامه نویسی رو به عنوان زبان پایه و مادری خودت انتخاب کنی!
اگر واقعاً میخواید برنامه نویسی رو یاد بگیری از C & C++ شروع کنید؛چون در این زبان همه چیزی برای یک برنامه نویس خوب شدن مُهَیا هست؛ در زبان C# وقتی شما با یه TAB زدن یه خط کامل برای شما نوشته میشه منظورش اینه که آقا در C# ما نمیخوایم تو کد نویسی کنی ما ایده برنامه نویسی میخواییم ازت،تو ایده خودت رو مطرح کن کدهاش آماده هست!!
امروزه یادگیری یک زبان برنامه نویسی کافی نیست و شما باید حداقل چند زبان برنامه نویسی یاد بگیرید،لازم نیست شما در همه زبان ها خبره بشید در همین حد که بتونید نیازهای خودتون رو رفع کنید و گلیم خودتون رو از آب بیرون بکشید بیرون کفایت میکنه.من به شخصه به غیر از زبان های .NetFramework بقیه کار کردم و کد نویسی کردم و قواعد کد نویسی و بلدم و هر جا گیر کردم یه نگاهی به documentهای سایت سازنده میزنم و کارم رو انجام میدم! یادمه مدت ها قبل پروژه زبان پاسکال بهم خورده بود با اینکه تا اون موقع (89) تو محیط پاسکال کد نزده بودم،پروژه رو انجام دادم؛ اول الگوریتم برنامه رو کاغذ پیاده سازی کردم و با استفاده از Documentهایی که در دسترس داشتم اومدم برنامه رو نوشتم و کارفرما هم خیلی راضی از پروژه حق الزحمة رو کامل پرداخت کردند. پس نیازی نیست که حتماً روی همه زبان ها تسلط داشته باشید،فقط کافیه که به ساختار اون زبان برنامه نویسی آشنا باشید بقیه اون فقط syntax هست.
مقایسه زبان های برنامه نویسی:

این کار درستی نیست؛یعنی اینکه ما نمیتونیم بگیم که آقا این زبان خوبه این زبان خوب نیست!
این زبان سخته ،این زبان آسونه و ...
هر زبان برنامه نویسی نقاط ضعف و قوت خودش رو داره و شما باید بسته به نوع نیازت بیایی زبان برنامه نویسی مورد نظرت رو انتخاب کنی!!
مثال میزنم براتون فرض کنید که از تهران میخوایید به یکی از شهرهای کشور برید(مثلاً ساری) برای رسیدن به این شهر راهای متفاوتی وجود داره،اگه میخوایید از مناظر طبیعی لذت ببرید هر جا که مکان بِکری دیدید وایسید و از منظره ها لذت ببرید با ماشین شخصی سفر کنید،اگر میخوایید زودتر به مقصد برسید با هواپیما سفر کنید،اگر میخوایید در مسیر راحت و مطمئن باشید با قطار مسافرت کنید،اگر میخوایید سفرکم هزینه باشه با اتوبوس مسافرت کنید.
در زبان برنامه نویسی هم به همین شکل هست اگه شما میخوایید ویروس نویسی و Keylogger نویسی یاد بگیرید بهتره از C++/C/Visual Basic استفاده کنید.
اگه زبان تحت وب کار کنید برید سراغ زبان PHP or asp.net , java script و... (جلوتر به تفضیل توضیح خواهم داد).

تا چند مدت پیش زبان های برنامه نویسی به در دو بستر قابل اجرا بودند:
1. تحت Desktop
2. تحت Web
اما امروزه با رشدِ تکنولوژی بستر دیگه ای هم اضافه شده،برنامه نویسی تحت (platform) بسترهای موبایل هست(اندروید ، IOS )
حالا شما باید تصمیم بگیرید که تحت چه Platformی میخوایید کد بزنید.
من در اینجا برای شما تمامی زبان هایی که تحت این platformها کار میکنند رو لیست و بررسی می کنم،دیگه شما خودتون باید انتخاب کنید که کدوم رو دوست دارید(متناسب با هدفتون)

آشنایی با زبان های برنامه نویسی تحت وب
اسامی زبان های برنامه نویسی و نیز کارکردهای این زبان ها برای افرادی که اطلاعات چندانی از روند ایجاد یک صفحه اینترنتی ندارند واقعا گیج کننده است.
از سوی دیگر؛ رشد روز افزون وبگاه ها با کارکردهای گوناگون و همین طور شکل گیری ایده های نو در فضای وب باعث شده که زبان های برنامه نویسی تحت وب به سرعت پیشرفت کنند و به این ترتیب باز هم بر پیچیدگی های موجود بیفزایند.
هدف این مطلب، کاستن از این پیچیدگی ها و ارائه یک طبقه بندی کلی از برخی از این زبان هاست.
ماهیت زبان های برنامه نویسی وب مانند دیگر زبان های برنامه نویسی است با این تفاوت که در سمت سرور تفسیر می شوند و در مرورگرها خروجی آن به نمایش در می آید.
در این مطلب چند زبان پرطرفدار وب معرفی می شود.
توسعه وب سایت دارای دو رویکرد کلی تحت عناوین طراحی وب (Web design) و برنامه نویسی وب (Web programming) است که هر یک دارای زبان های متعددی برای ساخت یک وبگاه هستند. با توجه به این دو گرایش؛ دسته بندی دقیق تری را می توان در جدول زیر ارائه کرد:

•برنامه نویسی سمت کاربر (Client side):
اغلب طراحان صفحات اینترنتی بر روی برنامه نویسی سمت کاربر تمرکز دارند.


باید افزود که رابط کاربری (User Interface) به کمک زبان های فوق خلق می شود و پوسته اغلب صفحات وب سایت ها بر پایه همین زبان ها استوار است و در نهایت کدهایی که به کمک این زبان ها تولید می شود توسط مرورگرها تفسیر شده و سپس خروجی آن ها برای کاربران به نمایش درمی آید.


• برنامه نویسی سمت سرور (Server side):
پیش از بحث درباره برنامه نویسی سمت سرور، ابتدا باید با سه مفاهیم زیر آشنا شویم.
• هاست (میزبانی وب): به فضایی اطلاق می شود که تمام فایل های وبگاه ما بر روی آن قرار دارد.
• سرور: کامپیوتری است که کاربران در صورت اتصال به اینترنت می توانند به اطلاعات روی آن دسترسی پیدا کنند.
• وب سرور: یک نرم افزار کامپیوتری است که درخواست های کاربران را از طریق پروتکل هایی نظیر Http را که بوسیله مرورگر ارسال می شود را دریافت می کند، صفحه درخواستی را یافت می کند و در نهایت صفحه وب یافته شده را از طریق شبکه به مرورگر درخواست کننده می فرستد.
اغلب صفحات اینترنتی در دوران کودکی وب به شکل استاتیک بودند و برای تغییری کوچک درآنها نیاز به مشقت فراوانی بود. رفته رفته با حضور وب 2 و گسترده شدن جامعه کاربران محتوا محور در وب، صفحات اینترنتی بیش از پیش احتیاج به پویایی داشت و دیگر آن شیوه های سنتی پاسخ گوی نیازهای گردانندگان وبگاه ها نبود.

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

در برنامه نویسی وب، HTML یا CSS یا Javascript یا PHP یا ASP یا JSP؟
اگر برنامه نویسی وب را انتخاب کردید، حالا باید زبان های آن زمینه را بشناسید و انتخاب کنید که کدام زبان بیشتر به درد شما میخورد

-- انتخاب کنید: برنامه نویسی ایستا یا پویا؟
سایت های اینترنتی در کل دو دسته هستند: ایستا و پویا. سایت های ایستا آن هایی هستند که تبادل داده چندانی با کاربر ندارند. مثل سایت های معرفی شرکت های یک شهرک صنعتی. فقط محصولات را در چند صفحه ثابت معرفی می کنند و شما می بینید و تمام. اما سایت های پویا آن هایی هستند که بر اساس داده هایی که از کاربر می گیرند محتوای متفاوتی به او نشان می دهند. به طور مثال سایت های شبکه های اجتماعی، انجمن های گفتگو، در کل سرویس هایی که کاربر در آن ها ثبت نام و لاگین و لاگ آوت می کند.
شما در هر دو صورت، بخواهید یا نخواهید باید HTML و CSS و Javascript را یاد بگیرید. بدون این زبان ها هرگز نخواهید توانست سایتی باب طبع مشتری و خودتان طراحی کنید.
HTML و CSS را به صورت حرفه ای یاد بگیرید و با Javascript یک آشنایی اجمالی پیدا کنید. طوری که بتوانید کدهایی که لازم دارید را با جستجو در اینترنت پیدا کنید و طوری تغییر دهید که آن چیزی بشود که می خواهید.
دوره های آموزشی طراحی وب مقدماتی معمولاً این سه مبحث را کاور می کنند. کتاب های آموزشی فارسی هم تا دلتان بخواهد روی اینترنت هست.
تا اینجا شما برنامه نویسی مقدماتی را آموحته اید، اما اگر بخواهید پای فرم ها و تبادلات داده با بانک اطلاعاتی و لاگین و لاگ آوت را به میان بیاورید(که طبیعتاً برای کارهای حرفه ای باید بیاورید)، باید به سراغ زبان های پویا بروید.
-- از بین زبان های برنامه نویسی پویا، کدامیک؟ ASP یا PHP یا JSP؟ یا Rubby on Rail و غیره؟
یکی دیگر از درگیری ها و ابهامات بین دانشجویان رشته کامپیوتر همین مسأله است! این یک جنگ تاریخی بوده و هست! کافی ست در اینترنت جستجو کنید "PHP یا ASP" تا ببینید که چه درگیری هایی بین کاربران وجود دارد!
-- در شهرستان های کوچک زندگی می کنید یا در شهرهای بزرگ مثل تهران؟
مجدداً این سؤال را از شما پرسیدم، چون واقعاً سؤال تعیین کننده ای است. چرا؟
در کل، افرادی که به سراغ PHP می روند، معمولاً روحیه Open Source دارند و کدهایشان را به رایگان منتشر می کنند. اما افرادی که سراغ ASP می روند، معمولاً مثل اربابشان مایکروسافت، روحیه تجاری و انحصاری دارند. بنابراین، شما بسیار کم می بینید که یک CMS (سیستم مدیریت محتوا) و یا حتی یک کامپوننت به زبان ASP منتشر شود. (البته کم نیست، اما بلا شک کمتر از PHP است)
بنابراین، می شود گفت:
- برنامه نویسی به زبان ASP یعنی نوشتن برنامه از صفر:
یعنی چون سیستم آماده وجود ندارد، شما باید خودتان آستین بالا بزنید و یک برنامه را بنویسید. مثلاً یک مشتری به شما می گوید من یک سایت معرفی مؤسسه ام یا یک انجمن گفتگو یا یک گالری عکس و یا مدیریت کاربران و امثالهم را می خواهم. شما شروع می کنید از صفر برنامه اش را می نویسید. تأمین امنیت، خطایابی و ... همه به عهده شماست.
- نوشتن از صفر یعنی صدها هزار تا چند میلیون تومان هزینه!
به مرور متوجه می شوید که نوشتن یک برنامه از صفر یعنی یک عمر پای برنامه گذاشتن. حالا شما برنامه ای که عمرتان را پایش می گذارید، چند می فروشید؟ مطمئناً دلتان نمی آید در ساده ترین شکل ممکن، زیر یک میلیون تومان قیمت بدهید.
- کدام مؤسسه شهرستانی بیش از یک میلیون تومان صرف سایت خود خواهد کرد؟
تجربه من نشان می دهد که تقریباً هیچ مؤسسه و سازمان و شرکتی در شهرستان به یک شرکت طراحی وب یا به شخص شما، این مقدار پول نمی دهد.
من حدود 8 سال است که درگیر طراحی وب هستم و با مؤسسات مختلف شهرستانی وارد مذاکره برای داشتن یک سایت شده ام و این را به جرأت و از روی تجربه ام می گویم که در شهرستان، این مبالغ، بسیار بالاست.
(بگذریم که گاهی برخی مؤسسات بیشتر از این هزینه را به یک شرکت طراحی وب تهرانی می دهند، چون به شرکت های شهرستانی اعتماد ندارند)
- برنامه نویسی به زبان PHP یعنی در اختیار داشتن صدها سیستم و کامپوننت آماده:
شما اگر یاد بگیرید که به زبان PHP برنامه بنویسید متوجه خواهید شد که این روزها تقریباً برای هر کاری که مشتری از شما بخواهد، یک سیستم آماده وجود دارد! شما با مهارتی که کسب کرده اید، در مدت کوتاهی، سیستم را باب میل او تغییر می دهید و روی سایتش نصب می کنید و تمام!! یک قیمت اندک (زیر یک میلیون تومان. حتی گاهی زیر 100 هزار تومان) به او اعلام می کنید. هم او راضی است و هم شما و معامله به خوبی جوش می خورد و در کمترین زمان کار را تحویل می دهید.
البته اگر احیاناً جایی لازم به طراحی یک سیستم سفارشی بود، شما مهارت کافی کسب کرده اید و می توانید به راحتی با ترکیب کامپوننت های آماده، کار را تمام کنید.
به خیلی از شاگردانم در کلاس های طراحی وب یاد داده ام که چطور CMSهایی مثل PHP-Nuke، WordPress و امثالهم را نصب کنند. مثلاً این روزها که انتخابات است، می بینم که چند نفرشان سایت های افراد کاندید انتخابات را با WordPress بالا آورده اند! تصور کنید، با تمام مطالب و تغییراتش، کمتر از یک هفته زمان می گیرد و بالای پانصد هزار تومان از آن کاندید می گیرند.
- اگر در تهران یا مراکز استان هستید، به سمت ASP یا در بهترین حالت، JSP بروید:
در تهران و مراکز استان، طبیعتاً دفاتر مرکزی مؤسسات، شرکت ها و ادارات قرار گرفته اند و طبق یک قرارداد چند میلیونی تا چند ده میلیونی (که برای آن ها واقعاً چیزی به حساب نمی آید) هسته اصلی سیستم یا سایت خود را سفارش می دهند و در شعبه های خود منتشر می کنند. از طرفی شما به عنوان برنامه نویس به زبان ASP، احتمالاً در مراکزی استخدام خواهید شد که نبض این سازمان ها را در دست دارند. این مراکز، به دلیل امکانات جذابی که Visual Studio در سادگی کد نویسی و کار گروهی و مدیریت پروژه ها فراهم می کند، ترجیح می دهند با ASP و یا Java کار کنند. پس در آن شهرها برعکس شهرستان ها، به نوعی شاید عاقلانه نباشد که به سمت PHP بروید. (مگر اینکه بخواهید برای خودتان کار کنید که پیشنهاد نمی کنم)
- بین جاوا و ASP کدام؟
در آگهی های استخدام، خیلی کم دیده ام بنویسند برنامه نویس JSP استخدام می کنند. معمولاً ASP در اولویت است. دلیل آن هم بلاشک قدرت بسیار بالای Visual Studio در خلق پروژه است.
توجه: زبان های جدیدتر مثل Python و Rubby on rails و ... هم اینطور که مشخص است دارند جا باز می کنند. بد نیست اگر در تهران زندگی می کنید روی این موارد هم تحقیق کنید. من فعلاً فرصت نکرده ام روی این زبان ها وقت بگذارم، پس، ایده ای ندارم.
خوب، این از برنامه نویسی تحت وب.

زبانهای برنامه نویسی دسک تاپ

بیسیک
زبان بیسیک از سری زبان های است که توسط شرکت مایکروسافت تهیه گردید و قابلیت زیادی داشت ولی به هر حال قدرت رقابت با محضول شرکت بورلند یعنی پاسکال را نداشت چرا که بورلند پاسکال دارای یک مترجم یا کامپایلر را داشت که این امکان را برای کاربر به وجود می آورد که بتواند بدون نیاز به خود زبان برنامه نویسی برنامه را اجرا کند و دیگر مزیت این کامپایلر این است که زمانی که شما دستورات را به طور کامل تایپ کردید کامپایلر یکجا برنامه را به زبان ماشین (۰و۱) تبدیل می کند و سرعت برنامه نیز بالا تر میرود حال آنکه بیسیک که یک مفسر محسوب می شود کدها را بهصورت خط به خط به ماشین تبدیل می کند نسخه های تکمیلی بیسیک : کوییک بیسیک کیوبیسیک ویژوال بیسیک را می توان نام برد که قابلیت شی گرا یی دارند وهمینطور دارای کامپایلر نیز هستند.
دلفی
دِلفی (Delphi) یا به تعبیری ویژوآل پاسکال – یک زبان برنامه نویسی است و بستری برای توسعهٔ نرم افزار که شرکت بورلند آن را تولید کرده است. این زبان، در بدو انتشار خود در سال ۱۹۹۵، به عنوان یکی از نخستین ابزارهایی مطرح شد که از توسعهٔ نرم افزار بر مبنای متدولوژی RAD پشتیبانی می کردند؛ یعنی تولید و توسعهٔ سریع برنامه های کاربردی.
این نرم افزار بر مبنای پاسکال شی گرا بوده و از این زبان مشتق شده است. البته بورلند نسخه ای از دلفی و سی پلاس پلاس بیلدر را برای لینوکس به نام کایلیکس (Kylix) ارائه کرد که مورد استقبال توسعه دهندگان نرم افزارهای لینوکس قرار نگرفت. نرم افزارهای دلفی در ابتدا به صورت مستقیم از کتابخانه های ویندوز و کتابخانهٔ مخصوص خود به نام VCL استفاده می کرد، اما پس از نسخه ۶ دلفی، امکانات استفاده از دات نت هم به آن اضافه شد. در حال حاضر می توان دلفی را یکی از رایج ترین زبان های ممکن در ایران دانست.
زبانِ دلفی که پیشتر بنام Object-Pascal یا پاسکال شیءگرا خوانده می شد و برای طراحی نرم افزاهای تحت ویندوز به کار می رفت، امروزه چنان توسعه یافته است که برای تولید نرم افزارهای تحت سیستم عاملِ لینوکس و دات نت نیز به کار می آید. بیشترین کاربرد دلفی در طراحی برنامه های رومیزی و پایگاه دا ده ها است، اما به عنوان یک ابزارِ «چند- منظوره»، برای طراحی انواع گوناگونی از پروژه های نرم افزاری نیز مورد استفاده قرار می گیرد

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

ویژوال سی / سی پلاس پلاس
آنچه ویژوال سی خوانده می شود، در واقع یک محیط توسعه مجتمع (یا IDE) است که در مایکروسافت برای تسهیل کار برنامه نویسی به زبان سی یا سی++ طراحی و نوشته شده است. محیط ویژوال سی بخشی از مجموعه ای بزرگ تر به نام Microsoft Visual Studio است که اختصاصا به سی می پردازد. ویژوال سی مجموعه به هم پیوسته ای است که تمامی زنجیرهٔ ابزار توسعهٔ برنامه را یکجا گرد آورده. زنجیرهٔ ابزار فوق الذکر شامل ویرایشگر، کامپایلر، لینکر، ابزار میک، دیباگر و اسمبلر مخصوص ویژوال سی می باشد که هریک علاوه بر داشتن خواص برنامه های قدیمی تر، دارای قابلیت های منحصر به فردی هم می باشند. محیط ویژوال سی همانند بسیاری از محیط های برنامه سازی جدید مجهز به ویژگی ارزشمند خودتکمیلی است.
ویژوال سی++ درون کار، یا ++eMbedded Visual C یکی از محیط های طراحی نرم افزار محصول شرکت مایکروسافت است که بر مبنای محیط مشابه برای رایانه شخصی، یعنی ویژوال سی، طراحی شده است. این محیط جهت سهولت نوشتن و کامپایل برنامه برای ویندوز سی ایی (Windows CE، سیستم عامل شرکت مایکروسافت برای سیستم های نهفته) در محیط ویندوز NT یا XP است. این نرم افزار قابلیت کراس کامپایل (Cross-Compile) از کامپیوتر شخصی بر روی بسیاری از سیستم های درون کار شناخته شده یا سفارشی را داراست.

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

ویژوال فاکس پرو
نرم افزاری است که بوسیله آن میتوان بانکهای اطلاعاتی را تهیه کرد یک از بهترین ابزارهای
برنامه نویسی را دارا می باشد که توسط شرکت مایکروسافت ارائه گردیده است در حال حاضر
نسخه ۹ آن تهیه شده و در آینده نسخه جدید این نرم افزار با نام سدنا به بازار عرضه خواهد شد .
البته این نرم افزار دارای قدرت بسیار در تولید نرم افزارهای بانک اطلاعاتی هست که دارای برترهای بسیاری بر سایر زبانها هست ولیکن اشتباهی است این است که بیشتر قدرت زبانهای را باهم قیاس می کنند حال آنکه باید دقت کنید که زبانهای دیگر همچون دلفی – وی بی یا … خود از یک دیتابیس اینجین دیگر (همچون اکسس – پاراداکس و …) جهت مدیریت بانک اطلاعات استفاده می کنند که دیتابیس اینجنین داخلی ویژوال فاکس بسیار برتر از آنها هست
ولیکن متاسفانه یا در حقیقت یکی از پوئن های فاکس آن است که به راحتی می توان آن را یاد گرفت و به کار بست ولی به دلیل تولید نرم افزارهای ناقص و دارای عیب و ایراد بسیار توسط برنامه نویسان آماتور (مخصوصا در دوران داس) باعث ایجاد بدنامی این زبان بسیار قدرتمند شده حال آنکه اینچنین نیست
و واقعا در تولید نرم افزارهای بانک اطلاعاتی بسیار قدرتمندتر از سایر زبانها هست
شاید بخواهید آنها را قیاس با دیتابیس اینجنین های قدرتمندی همچون ms-sql یا mysql بکنید
که می توان در پاسخ گفت دقت کنید که خود ویژوال فاکس نیز می توانید به راحتی به آنها کانکت شود و از قدرت آنها نیز بهرهمند شود ولی به این نکته نیز دقت کنید که بسیاری از نرم افزارهای ما بیشتر به صورت single user استفاده می شود و موارد شبکه دارای استفاده های خاص هستند.
که ویژوال فاکس نیز جهت استفاده در محیط شبکه و ایجاد نرم افزارهای قدرتمند تحت شبکه با استفاده از دیتابیس اینجنین های همچون اوراکل یا sqlserver یا mysql را نیز داراست.
و محیط و دستورات داخلی آن نیز بسیار کارآمد و راحت جهت کنترل کلیه امور توسط برنامه نویس هست.

Microsoft .NET
جدید ترین نسخه طراحی شده سیستم معماری نرم افزار توسط Microsoft که امکانات بسیاری را در اختیار برنامه نویسان (بخصوص در زمینه طراحی نرم افزارهای مبتنی بر اینترنت) قرار میدهد. در واقع شاید بتوان گفت که این شاید اولین گام اساسی شرکت Microsoft در ارتباط با این تکنولوژی باشد؛ به عبارتی، Microsoft در تلاش بوده که یک سیستم جدید معماری نرم افزار را در اختیار برنامه نویسان قرار دهد که میتوان از NET. به عنوان اولین نتیجه این تلاشها نام برد. این سیستم نرم افزاری شاید بهترین و کاملترین گزینه برای کسانی است که میخواهند برنامه هایی برای ابزارهای مورد نظر خود ایجاد نمایند که بتوانند توانایی های مرتبط با اینترنت را نیز در آنها بگنجایند. برای مثال این تکنولوژی جدید میتواند این توانایی را به کاربران کامپیوترهای شخصی (PC) بدهد که بتوانند به راحتی با سایر ابزارهای بیسیم (Wireless) با استفاده از کدهای خاص ارتباط برقرار نمایند. هر طراح نرم افزار و برنامه نویسی میتواند مطمئن باشد که با یادگیری این سیستم جدید – بدلیل توانایی های این سیستم برای برقراری ارتباط با سایر ابزار هوشمند و ابزارهای اطلاعاتی – به توانایی های بیشتری در زمینه طراحی سیستم های نرم افزاری کامپیوتری خواهد رسید. این موضوع یکی از دلایلی است که باعث شده است که این سیستم معماری نرم افزار جدید توسط Microsoft ایجاد شود.

#C
این زبان برنامه نویسی یک زبان ساده، پیشرفته و دارای امکانات کامل تکنیک های برنامه نویسی شی گرا میباشد که شباهت زیادی به زبانهای C و ++C دارد. #C (که آنرا به نام C شارپ نیز میشناسند) به دلیل اینکه به عنوان یک عضو جدید از خانواده زبانهای مشابه C ایجاد شده است، کاملا برای برنامه نویسان آشنا به این زبانها شناخته شده خواهد بود. این زبان در واقع به صورت کاملا اختصاصی برای استفاده از امکانات Microsoft .NET Framework نوشته شده است. NET Framework. مجموعه ای متشکل از یک محیط اجرایی که تحت عنوان Common Language Runtime) CLR) شناخته میشود و همچنین مجموعه کاملی از توابع و کلاسهای آماده، میباشد که میتوان از آن در نوشتن برنامه هایی به زبانهای مختلف استفاده نمود. زبان برنامه نویسی #C در واقع در تلاش است که راحتی و ساده بودن زبان Visual Basic را همراه با قدرت و توانایی های C++ در اختیار برنامه نویسان قرار دهد. این زبان به عنوان یکی از بخشهای مجموعه Visual Studio 7 توسط شرکت Microsoft عرضه شده است که این مجموعه نرم افزاری شامل زبانهای VB .NET و VC++ .NET و همچنین زبانهای اسکریپت نویسی VB Script و JScript میباشد و همه این زبانها نیز قابلیت استفاده از توانایی های NET Framework. را دارا میباشند. #C خود دارای کلاسهای آماده خاصی نمیباشد اما برنامه نویسان، با توجه به آنکه با زبان جدیدی کار میکنند، به راحتی این توانایی را خواهند داشت که بتوانند از توابع و کلاسهای نوشته شده در سایر زبانها مانند Visual Basic و ++Visual C در برنامه های خود استفاده کنند. این زبان همچنین قابلیت های خاصی برای نوشته برنامه هایی که از امکاناتی مانند XML و SOAP در آنها استفاده میشود، دارد.

Visual C# .NET
این زبان را به عنوان یک گزینه خوب میتوان به برنامه نویسان مبتدی و یا متوسطی که تا حدودی با یکی از زبانهای Java و یا C++ آشنایی دارند، معرفی نمود. یک زبان پیشرفته که با استفاده از امکانات محیط برنامه نویسی بسیار عالی میتواند برنامه نویسی نرم افزارهای تحت ویندوز که از تکنولوژی NET. استفاده میکنند همچنین سرویس ها وب مبتنی بر XML و همچنین نرم افزارهای اینترنتی را بسیار راحت نماید.

پرل:
زبان پرل در سال ۱۹۸۷ به وسیله لاری وال برای خودکار سازی برخی از برنامه های مدیریتی یونیکس به وجود آمد .اکنون این زبان به محیطی پر طرفدار برای ایجاد
مجموعه گسترده ای از برنامه های کاربردی تبدیل شده است . هرچند نوشتن اسکریپت کوچک برای برنامه های ساده, نسبتا آسان است .با این همه این زبان انقدر قدرتمندهست تا بهترین برنامه نویسان را راضی نگهدارد .
پل هافمن در کتاب (perl for dummies) می نویسد ((زبانهای دیگر تلاش می کنند تا شکیل یا بسیار کوچک باشند اما پرل سعی دارد کامل بوده و کاربردی ساده داشته باشد . )) وال از برنامه نویسان جهان برای نوشتن کد منبع باز و ماجولهای افزودنی در خواست همکاری کرد به همین دلیل پرل قابلیتهای فراتراز ریشهای مدیریتی سیستم خود دارد .
این زبان شامل یک محیط قدرتمند اشکال زدایی است و ماجولهای آن به اجرای اموری چون پردازش داده های html و xml کمک می کنند .
در وافع پرل زبان مفسر داری است که برای کار بر روی فایلهای متنی مناسب است .زبان پرل را برابر با زبان قدرتمند C می دانند بیراه هم نیست چون ساختار زبان پرل
شبیه زبان C است .
در ضمن در ایران هم به خاطر این زبان بهتون پول نمی دن ولی اگر باهاش کار کنین انوقت خواهین فهمید پرل چگونه زبانی است .

زبان اسمبلی
زبان اَسمبلی (Assembly language) یا همگذاری یک زبان برنامه نویسی سطح پایین برای رایانه ها و دیگر دستگاه های برنامه پذیر است که رابطۀ یک-به-یک با دستورالعمل های زبان ماشین معماری رایانه دارد. هر زبان اسمبلی مختص به یک معماری رایانه خاص است، برخلاف بیشتر زبان های برنامه نویسی سطح بالا که با معماری های مختلف سازگار هستند ولی برای اجرا شدن به مفسر و مترجم نیاز دارند.
زبان اسمبلی با استفاده از یک برنامه جانبی به نام اسمبلر، به کد ماشین قابل اجرا تبدیل می شود؛ به این فرایند تبدیل، اسمبل کردن ( ( Assembling گفته می شود.
زبان اسمبلی ازیادیارها برای نشان دادن هر دستور ماشین سطح-پایین یا آپ کد استفاده می کند. بعضی آپ کدها به یک یا چند عملوند به عنوان بخشی از دستورالعمل نیاز دارند، و بیشتر اسمبلرها می توانند لیبل ها و نمادهایی را به عنوان عملوند، برای نشان دادن آدرس های حافظه و ثابت های عددی بپذیرند. ماکرو اسمبلرها نیز قابلیت درشت دستوری (Macroinstruction) را شامل می شوند که این امکان را به وجود می آورد که متن یک کد زبان اسمبلی با یک نام از پیش تعیین شده در خلال متن یک کد دیگر استفاده شود. بیشتر اسمبلرها مکانیزم های اضافی برای تسهیل فرایند توسعه برنامه، کنترل فرایند اسمبل کردن و پشتیبانی از اشکال زدائی ارائه کرده اند.


پایتون
پایتون یک زبان برنامه نویسی تفسیری ، داینامیک و شی گرا می باشد که می توان از آن در محدودی وسعی از نرم افزار ها و تکنولوژی ها بهره برد . این زبان برنامه نویسی روشهای بسیار قدرتمند و حرفه ای را برای کار با زبانها و ابزار های مختلف را با آسانی هر چه تمام تر فراهم می کند . بدین منظور این زبان داره کتابخانه هایی بسیار گسترده می باشد که یادگیری و استفاده از آنها در عرض چند روز ممکن می باشد ! پایتون همچنین یک زبان بر اساس وجوز های نرم افزار آزاد و اپن سورس می باشد . کد های نوشته شده در این زبان در محدوده ای وسیع از پلتفرم ها چون لینوکس ، ویندوز ، مک ، و حتی گوشی های موبایل و ... قابل اجرا می باشد . همکنون پایتون در شرکت ها و سازمانهای بزرگی چون ناسا ، گوگل ، یاهو و ... بصورت گسترده مورد استفاده قرار می گیرد .
در برنامه نویسی موبایل، کدام پلتفرم؟ Android یا iOS یا Windows Phone یا Java؟
خیلی با احتیاط وارد بازار کار برنامه نویسی برای موبایل شوید چون در ایران بازار کار قوی ای ندارد و ممکن است بعداً به این نتیجه برسید که اگر وقت خود را روی وب یا دسکتاپ می گذاشتید بهتر بود. بیشتر افرادی که من می بینم که برنامه نویسی موبایل انجام می دهند، شغل دیگری دارند و برای تفریح کار می کنند.
- اپل ما را خط زده است، پس ما هم iOS را خط می زنیم:
احتمالاً می دانید که اپل همه چیزش را برای ایران تحریم کرده است. از طرفی برنامه های اپل باید حتماً توسط اپل و در App Store تأیید شوند و قرار بگیرند وگرنه قابل استفاده روی گوشی کاربر نیستند (مگر اینکه Jail Break شده باشد که خوب، عاقلانه نیست روی گوشی های جیل.بریک شده برنامه ریزی کنید). به همین راحتی ها نمی توانید برنامه ای که نوشته اید را به دست کاربر برسانید. من تعداد معدودی ایرانی دیده ام که برای اپل برنامه نویسی می کنند که آن ها هم اکثرشان در خارج از کشور زندگی می کنند و محدودیت قانونی ندارند.
به هر حال، اگر بخواهید برای iOS کدنویسی کنید، باید به زبان C++‎ مسلط باشید. Xcode SDK را از سایت اپل دانلود کنید و روی سیستم عامل مک خود نصب کنید و شروع کنید. البته می توانید از پروژه مونو هم استفاده کنید تا کدهای C#‎ شما روی iOS اجرا شوند.
- آندروید دنیای گوشی ها را فتح خواهد کرد:
گوگل روی هر چیزی دست بگذارد، دیر یا زود به صدر لیست منتقل می شود و این طبیعی ست.
آندروید با اینکه مدت کمی از عمرش می گذرد، اما در صدر لیست سیستم عامل های موبایل است و به زودی همه جا دیده خواهد شد حتی روی یخچال فریزر شما!!
بنابراین، پیشنهاد اول من این است که به سمت آندروید بروید.
برای برنامه نویسی ویژه آندروید، باید زبان Java را بلد باشید. فکر می کنم حالا متوجه می شوید که چرا جاوا در رتبه دوم زبان های محبوب است!
خیلی ها معتقدند دنیا دارد به سمت موبایل و تب لت می رود. "اینترنت بدون وب" عنوانی است که این روزها مطرح است. همه سایت ها برای خود یک اپلی***ن ارائه کرده اند که روی گوشی اجرا می شود و نیازی نیست وارد وب سایت خاصی شوید!
- ویندوز فون، جان خواهد گرفت:
ویندوز فون هم به زودی جا باز خواهد کرد. روی آن هم می توانید برنامه ریزی کنید، اما اولویت اولتان، جاوا و آندروید باشد.
برای ویندوز فون می توانید به زبان C#‎ برنامه بنویسید.
  1. Maryam-Nazari
  2. مهندسی کامپیوتر
  3. دوشنبه, 18 خرداد 1394
  4.  اشتراک
هنوز نظری قرار داده نشده است
پاسخ صحیح
پاسخ صحیح Pending Moderation
1
رای
لغو
https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcQh20zKry0fo0qjgj_Na8xUnfXer9YS9QhmAHZx0DDardZH9TgM
هنوز نظری قرار داده نشده است
  1. بیش از یک ماه پیش
  2. مهندسی کامپیوتر
  3. # لینک


این پست دارای پاسخ است اما شما مجوز مشاهده ندارید
ham
javidan
faranovin2
nabisa
nbt.p
pol
tat
ayande
 
 
Top
آیا به تازگی با مجموعه اِپرا آشنا شده اید؟ آیا تمایل دارید اطلاعات بیشتری از ما داشته باشید؟ More details…