مرجع تخصصی برنامه نویسان

بزرگترین انجمن برنامه نویسان فارسی زبان

نگرانی بابت آینده دات نت

دوشنبه, 04 مرداد 1395 22:10

نگرانی بابت آینده دات نت

سلام

در مورد ادامه کار با دات نت و آینده این مسیر نگرانم ، در صورت امکان راجب آینده مسیر دات نت نظراتتون رو اعلام کنید
رفتن به سمت چه زبان های دیگری از نظر شما آینده بهتری دارن نسبت به دات نت  ؟

نیازه یک دات نت کار جاوا هم کار کنه ؟ (درسته ممکنه بگید هر زبانی ممکنه در جای خودش استفاده بشه ولی از طرفی هم تخصص داشتن رو یک -دو زبان بهتره تا رفتن سمت همه زبان ها )


در کنار دات نت در سطح وب و موبایل چه مسیرهای دیگه ای رو هم پیش برم ؟ و با چه فریمورک ها و زبان هایی ؟ (مثلا برای تولید اپ اندروید سمت جاوا برم یا چون دات نت کار میکنم Xamarin کار کنم ؟ اگر از Xamarin  استفاده کنم کیفیت اپ تولیدی در حد جاوا هست یا نه ؟ )

سمت برنامه نویسی وینفون برم یا آینده ای نداره ؟

در کل این رو بگم راجب آینده کاری برنامه نویسی نگران هستم ، چه برنامه نویسی وب و چه برنامه نویسی موبایل ...

با تشکر
 

ﺳﻪ شنبه, 05 مرداد 1395 00:42

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

در مورد دانت فکر میکنم نگرانی تون بیش از حد بی مورده!دانت واقعا در مسیر بسیار خوبی در حاله حرکته.دوستی دارم که بسیار دانت کاره خبره و با تجره ایست ولی با این حال جاوا رو هم بلده در حد بسیار خوب(این یعنی مزیت).بنظرم دانت اینقدر قوی هست که بتونه تمام نیاز ها رو ارضا بکنه(بجز مواردی خاص)

در مورد Xamarin هم کاملا مشخصه که جاوا بسیار جلوتره اون هم بخاطر پیشگام بودنشه(به نظر خودم)

کسانی که از این پست تشکر کرده اند : ajaxh,
ﺳﻪ شنبه, 05 مرداد 1395 12:23

اول با نشان دادن تصویر زیر آغاز می کنیم. آیا میتوانید حدس بزنید این تصویر مربوط به کدام ماشین است؟ این ماشین یکی از ابتدایی ترین مدل های تولیدات شرکت BMW میباشد.

حال تصویر زیر را مشاهده کنید. این تصویر مربوط به آخرین مدل BMW با نام i8 می باشد.

اجازه دهید که تصاویری بیشتری از تولیدات این شرکت به شما نشان دهیم. این عکسها مربوط به سری 3 مدل های BMW می باشد که در سال 1975 به نمایش گذاشته شد.

 

آیا در سال 1975 یا 1983 قادر به پیش بینی اخرین مدلی که BMW امروز ارائه داده است، بودید؟ مطمئنا هیچ کس قادر به این کار نبوده است. مدل ها با توجه به نیاز بازار و قابل دسترس بودن تکنولوژی ها تغییر کرد.

روندی مشابه با BMW برای Microsoft .NET Framework نیز اتفاق افتاد. Microsoft .NET Framework یک پلت فرم در حال توسعه است که هر سال در حال توسعه و پیشرفت میباشد. اگر شما به عکس زیر توجه کنید، متوجه خواهید شد که از 15 سال گذشته تا به حال، مایکروسافت به چه میزان پیشرفت کرده است.

اولین محصول .NET Framework 1.0 در سال 2002 به بعد منتشر شد. در هر نسخه جدید از .NET تکنولوژی های جدیدی معرفی میشود و همچنین تکنولوژی های موجود قبلی توسعه و ارتقاء می یابد.

 

          .NET Framework هنوز در حال توسعه و پیشرفت است

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

انواع نرم افزارهای .NET

 هنگامیکه که .NET Framework برای اولین بار معرفی شد تعداد محدودی از نرم افزارها را پشتیبانی میکرد. در حالیکه امروزه تقریبا میتوانید هر نوع برنامه و نرم افزاری را با استفاده از .NET framework ایجاد کنید و آن را توسعه دهید. در اینجا برخی از نرم افزارهایی که می توانیم با استفاده از .NET framework بسازیم آورده شده است:

_Windows client applications (WPF, Windows Forms)

_Windows Store Apps

_ Universal Windows Apps  (ویندوز اپ های جهانی ) با استفاده از UWP برای Windows Phone، Windows 10، HoloLenها ، Surface ، Xbox برای سایر دستگاه های Microsoft.

Web applications_ با استفاده از ASP.NET  و/ یا HTML 5/JavaScript/CSS3 .

Android Mobile apps_

Apple iOS apps_

web application_ های واکنشگرا و کراس پلت فرم با استفاده از HTML 5/JavaScript و CSS

TypeScript_ به منظور ساخت شی مدرن و جدید بر مبنای نرم افزارهای JavaScript

Enterprise applications_

WCF_ و Web API services

SharePoint, Office, SQL Server_ و cloud enabled apps

Azure Microservices_ و Azure enabled apps

_کامپوننت ها و کتابخانه ها

_بازی های 2D و 3D

_و مواردی دیگر ...

از لیست بالا میتوان متوجه شد که قابلیت ها نامحدود هستند.

زبان های برنامه نویسی و .NET

C# ، C++ ، VB.NET و F# به نظر میرسد که از بیشترین پشتیبانی برخوردار هستند و پرکاربردترین زبانها برای برنامه نویسی می باشند، اما نزدیک به 50 زبان دیگر نیز وجود دارد که .NET framework از آن پشتیبانی میکند. برخی از این زبانها توسط مایکروسافت توسعه یافته اند و برخی دیگر توسط سایر شرکتها توسعه یافته اند. .NET Framework از  زبانهایی مانند Ada, APL, AsmL, BETA, Boo, C, C++, C#, Caml, CAT, COBOL, CULE, Eiffel, FORTRAN, Haskell, IL/MSIL, Java, JavaScript, Lexico, LISP, LOGO, Lua, Mercury, Mixal Assembly Language, Modula-2, Mondrian, Oberon, Memerle, Pan, Perl, Pascal, PHP, Processing, Prolog, Python, R, Ruby, RPG, Scala, Scheme, Smalltalk, SML, Synergy, Tcl/Tk, Visual Basic و XAML پشتیبانی میکند.

هنگامیکه ما درباره .NET بحث میکنیم عادلانه نخواهد بود که در رابطه با C# و Roslyn صحبت نکنیم. Roslyn یک پلت فرم کامپایلر در .NET می باشد که کامپایلرهای  Visual Basic و open-source C# را به همراه rich code analysis API ها فراهم میکند.

مایکروسافت C# 7 ، تعدادی قابلیت جدید به بازار معرفی شد. در این مقاله  مطالب خوبی در مورد C# و .NET FrameWork آورده شده است.

مانند .NET ، C# نیز open_Source شده است و در حال توسعه و پیشرفت است. جدول زیر پیشرفت هایی که در نسخه جدید هر زبان بوجود آمده است را نشان میدهد.

همانطور که مشاهده میکنید برخلاف زبان های دیگر C# همچنان کاربرد دارد و اکنون که سی شارپ، open-source شده است قوی تر شده و قابلیت های بیشتری در نسخه ها اضافه خواهد شد.

Universal Windows Platform

(UWP) Universal Windows Platform یک پلت فرم برای ساخت انواع برنامه ها در Windows 10 می باشد که شامل دستگاه هایی IoT, Desktop, Holographic, Xbox, Console و Surface Hub می باشد.

 یک core technology برای ساخت و ایجاد UWP app ها میباشد و UWP  به تازگی شروع بکار کرده است و بعنوان یکی از بخشهای .NET ، میتوانید از C#, VB.NET, F# یا VC++ برای ایجاد برنامه های UWP استفاده کرد.

.NET Core،  open-source  میباشد

در سال 2014، مایکروسافت دات نت را open-source کرد و بتدریج بیشتر کامپوننت ها شامل کامپایلرها، زبان ها، کتابخانه ها و ابزارها open-source شدند. هم اکنون بیشتر کامپوننت های open-source شده در Github موجود است.

.NET جدید را .NET Core نامیده اند که open-source است و ب یک پلت فرم در حال توسعه محسوب میشود، .NET Core نه تنها open-source است بلکه توسط یک تیم بسیار خوب با نام .NET Foundation مدیریت میشود. تیم .NET Foundation سابقه ی قوی در زمینه ی تکنولوژی های open-source دارند همچنین تجربه ای زیادی در زمینه ساخت و مدیریت پروژه های بزرگ ، طولانی مدت و موفق دارند. از آنجایی که صنعت نیاز به تغییر و رشد دارد دات نت فریم ورک همواره درصدد توسعه نرم افزارها و تکنولوژی ها برحسب نیاز مشتریان می باشد.

کسانی که از این پست تشکر کرده اند : ajaxh,
ﺳﻪ شنبه, 05 مرداد 1395 17:59

ممنون بابت توضیحات کامل شما

یعنی از نظر شما همین دات نت و مهارت هایی که در زمینه سی شارپ و mvc  و.. دارم رو تقویت کنم و سمت زبان هایی مثل جاوا، پایتون و.. نباشم؟

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

اما مثلا در مورد اندروید ، خوب همه توصیه میکنن بهتره اندروید با c# کار نشه و برای ورد به دنیای برنامه نویسی موبایل ،برای اندروید بهتره با جاوا کار بشه ، نظر شما چیه ؟
یا در مورد تولید اپ برای  بازار خوبی نداره ، پس شاید ارزش نداشته باشه در این زمینه هم وقت صرف کنیم،درسته ؟ Windows Phone

 

ارسال پاسخ برای این تاپیک

ارسال پاسخ مخصوص اعضا سایت می باشد ! میتوانید با حساب کاربری خود وارد سایت شده یا ثبت نام کنید