یادگیری زبان دوم همیشه آسانتر از زبان اول است. دانش برنامه نویسی از زبانی به زبان دیگر منتقل میشود. الگوریتم های مرتب سازی و دیزاین پترنها همه جا یکسان هستند. اما وقتی روی یک پروژه ی واقعی کار می کنید فقط با یک متد یا یک الگوریتم سروکار ندارید. سوال اینجاست که آیا می شود به راحتی از یک زبان به زبان دیگر مهاجرت کرد؟
حرفه ای شدن زمان میبرد
خیلی ها تصور می کنند که برنامه نویسی مانند رانندگی است. کافی است رانندگی با یک خودرو را خوب یاد بگیرید بعد می توانید با هر خودرویی رانندگی کنید. اما در عمل برنامه نویسی بیشتر شبیه تعمیر کردن خودرو است. ما در برنامه نویسی هر روز با مسائل جدیدی روبرو میشویم که قبلا شاهدش نبودیم. سرعت رشد فن آوری بالاست و هر روز تکنیک ها و ابزار جدیدی برای برنامه نویسی عرضه میشود. برای رسیدن به مهارت تعمیر یک خودرو خیلی بیشتر از یک روز یا یک هفته وقت نیاز دارید. درست است که ساز کار خودرو ها به طور کلی یکسان است اما هر خودرو از قطعات و ساختار متفاوت استفاده میکند. مشکلاتی که در یک زبان وجود دارد ممکن است در زبان دیگر اصلا وجود نداشته باشد یا به شکل دیگری خود را نشان دهد.
مثلا در دات نت و جاوا نیاز به پاک سازی حافظه ندارید چون اینکار توسط Garbage Collection انجام میشود. اما در ++C باید این کار را دستی مدیریت کنید. در Rust پاکسازی حافظه بر اساس طول عمر انجام میشود.
اگر برنامه نویسی جاوا هستید شاید بتوانید با ++C کدی بنویسید که کار کند اما لزوما کد شما درست نوشته نشده است. چه بسا کد نوشته شده توسط مایکروسافت و گوگل هم با سالها تجربه هنوز پر از باگ و مشکلات امنیتی است.
به عنوان برنامه نویس حرفه ای ++C هم نمی توانید روی پاکسازی خودکار حافظه در دات نت حساب کنید و مدام متغیرهای جدید تعریف کنید. استفاده ی درست از کلاسها و فریم ورک دات نت نیازمند تجربه ی زیادی است.
شیطان در جزئیات است
بر خلاف باور عمومی تنها با دانستن مبانی برنامه نویسی نمی توانید به سرعت زبانهای برنامه نویسی جدید یاد بگیرید. ممکن است در یک هفته بتوانید با ساختار زبان و نحوه ی نوشتن دستورات شرطی و حلقه آشنا شوید اما نوشتن برنامه های واقعی خیلی فراتر از سینتکس زبان است.
اگر قرار باشد برنامه ای بنویسید که یک عکس رنگی را سیاه و سفید کند و بخواهید این کار را در زبان های مختلف انجام دهید کار چندان سختی در پیش ندارید. عملا باید یک پروژه ی کوچک با تنها یک فایل ایجاد کنید و یک الگوریتم را از زبانی به زبان دیگر ترجمه کنید.
حالا اگر قرار باشد یک فروشگاه تحت وب را با زبانهای مختلف پیاده کنید قضیه کاملا فرق می کند. تنها دانستن حلقه و شرط مشکل شما را حل نمیکند. باید با فریم ورکها آشنا باشید. باید بتوانید از دیتابیس استفاده کنید و ساز و کارهای امنیتی پیاده کنید.
اگر قبلا با جاوا کار می کردید ممکن است بتوانید یک نسخه از فروشگاه تحت وب را با پایتون پیاده کنید اما اگر سورس را در اختیار یک برنامه نویس ارشد پایتون قرار دهید می تواند صدها ایراد از نحوه ی کد نویسی و ساختار پروژه ی شما بگیرد.
زبان مشابه کافی نیست
زبانهای جاوا و سی شارپ خیلی به هم شبیه هستند. مایکروسافت در طراحی سی شارپ ایده های زیادی از جاوا گرفته است. اما دلیل نمی شود مهاجرت از یکی به دیگری به آسانی صورت گیرد. اگر شما 10 سال تجربه ی برنامه نویسی با جاوا و Spring را داشته باشید و برای شغل برنامه نویس مبتدی ASP NET Core مصاحبه دهید احتمال اینکه رد شوید بسیار زیاد است. هر چند که هر دوی این فریم ورکها از الگوی MVC بهره می برند اما دانستن یکی دلیل بر آشنایی با دیگری نیست. متخصص شدن در هر کدام از این فریم ورکها سالها زمان می برد.
فریم ورک مشابه کافی نیست
زبانهای برنامه نویسی #C و F# هر دو محصول مایکروسافت هستند و هر دو از فریم ورک دات نت استفاده می کنند. با این وجود مهارت داشتن در یکی از ایم دو به معنی متخصص بودن در دیگری نیست. فلسفه ی فکری این دو زبان متفاوت است و به هیچ وجه یک شبه یا در یک هفته یا حتی در یک ماه هم نمی توانید از یکی به دیگری مهارجرت کنید و همان مهارت و کارایی را داشته باشید. همین مسئله در مورد Java و Scala هم صدق میکند.
نتیجه
توانایی یادگیری زبان جدید از مهمترین مهارت های یک برنامه نویس به شمار میرود. اما تصور نکنید که هر زمان اراده کنید می توانید به سرعت در زبان دیگری مهارت کسب کنید. کافی است خودتان امتحان کنید!
به عنوان یک برنامه نویس خوب حداقل باید درسه زبان برنامه نویسی مهارت داشته باشید. اینکه چه زبانهایی را انتخاب می کنید مهم نیست. اما مهم این است که زبانها را به صورت موازی یاد بگیرید. نباید برای شروع زبان دوم 5 سال صبر کنید. وقتی زبان جدیدی را شروع می کنید تنها 20 درصد از دانش قبلی شما به کار می آید باقی را باید دوباره کسب کنید. نمی توانید در مصاحبه استخدام پایتون بگویید من 5 سال با سی شارپ به طور حرفه ای برنامه نویسی کرده ام و انتظار داشته باشید شما را استخدام کنند.
{{comment.body}}
{{comment.userName}}
جهت ثبت نظر ابتدا وارد شوید
در واقع LLVM مجموعه ای از ماژولها و ابزار است که عملیات کامپایل کردن سورس کد به زبان ماشین را ممکن میکند.
Programming,LLVM,Languages,Kotlinچه خوب میشد اگر واقعا راهی وجود داشت که بتونیم با نظم و دسته بندی سوالاتمون رو مطرح کنیم، بعدا هم به راحتی قابل جستجو بود. مجبور هم نمیشدیم یک سوالو 10 بار فوروارد کنیم تا زیر پیامهای بقیه گم نشه.
ASP.NET Core,C#,Forums,Questionsیادگیری زبان دوم همیشه آسانتر از زبان اول است. دانش برنامه نویسی از زبانی به زبان دیگر منتقل میشود. الگوریتم های مرتب سازی و دیزاین پترنها همه جا یکسان هستند. اما وقتی روی یک پروژه ی واقعی کار می کنید فقط با یک متد یا یک الگوریتم سروکار ندارید. سوال اینجاست که آیا می شود به راحتی از یک زبان به زبان دیگر مهاجرت کرد؟
Programming,Learning,Languahesاستیو بالمر مدیر عامل قبلی مایکروسافت زمانی گفته بود که "لینوکس" سرطان است و باید از بین برود. هفته ی پیش اما ساتیا نادلا در بازگشایی کنفراس سالانه Red Hat حضور داشت و درباره همکاری های مشترک صحبت کرد.
Microsoft,Windows,Linux,Terminalمایکروسافت امروز اعلام کرد که بعد از .NET Core 3.0 نسخه ی بعدی ورژن 5 خواهد بود. به این ترتیب قرار است در آینده فقط یک دات نت داشته باشیم که به صورت یکپارچه در Windows و Linux و MacOS و Android و ... قابل استفاده است.
ASP.NET Core,Async,Sync,Load,Testاین روزها در آگهی های استخدام بسیار مشاهده می کنیم که آشنایی با دیزاین پترنها به عنوان یک الزام در نظر گرفته میشود. دیزاین پترنها روشهایی از قبل طراحی شده برای حل مسائل عمومی نرم افزار هستند. در حالی که اهمیت و کاربرد این مفاهیم در برنامه نویسی انکار ناپذیر است اما به نظر میرسد تاکید بیش از حدی روی آن وجود دارد. بر خلاف باور عمومی استفاده از آنها همیشه به سود شما نیست.
ASP.NET Core,MVC,Model Bindingکسب و کارها کم کم متوجه شدند که نمی توان و نباید همه ی تخم مرغهایشان را در سبد شبکه های اجتماعی یا سایتهای مادر قرار دهند چون این نوع سرویس ها ممکن است هر زمان از کار بیوفتد
ASP.NET Core,Web,Development,Futureنسخه ی نهایی فریم ورک ASP.NET Core 3.0 به زودی از راه میرسه و در این مجموعه پستها به بررسی تغییرات و قابلیتهای جدیدی که قرار هست به آن اضافه شود می پردازیم.
ASP.NET Core,3.0,Updates,Frameworkخیلی ها بر این باورند که بدست آوردن چیزهای رایگان خوب است.
ASP.NET Core,MVC,Learningتجربه ی پیاده سازی یک اپ PWA به مناسبت شب یلدا
ASP.NET Core,PWA,Hafez,Yaldaچند روز پیش تصمیم به یادگرفت Progressive web app گرفتم. هدف این بود که یک سایت به صورت آفلاین در چهارچوب این تکنولوژی پیاده کنم. اما خیلی زود فهمیدم کار زیادی در پیش دارم!
ASP.NET Core,Learning,Teaching,PWAکنفرانس کانکت مایکروسافت دیروز شروع به کار کرد و بسیاری از محصولات جدید مایکروسافت معرفی شد.
ASP.NET Core,MVC,Preview,Announcementsچگونه مایکروسافت به صدر بازگشت؟
Microsoft,Apple,Stock,Risingدیتابیس های NoSQL هیجان زیادی در بازار نرم افزار به وجود آورده اند. هر روز افراد بیشتری وسوسه می شوند به سراغ دیتابیسهایی مانند MongoDb بروند.
NoSQL,MongoDb,SQL,Databasesدر سال 2004 بخشی از سورس ویندوز NT و 2000 لو رفت. چیزی که برای بیشتر برنامه نویسها جالب بود خود کدها نبود
Code,Microsoft,Perfect,Architecture,Notesدر شغل برنامه نویسی هیچوقت مطالعه کردن به اتمام نمی رسد. اگر مهندس مکانیک باشید با تکنولوژی هایی سروکار دارید که بیش از نیم قرن قدمت دارند و قرار هم نیست به این زودی ها تغییر کنند. اما نیم عمر دانش برنامه نویسی خیلی کوتاه است.
Programming,Notes,Life,Livingدر محیط ASP Core الگوی MVC کاملا از بدنه ی اصلی فریم ورک جدا شده است. برای استفاده از MVC باید آن را به صورت یک Middleware (میان افزار) به پروژه ی ASP.NET Core اضافه کنید.
ASP.NET Core,Middleware,Filtersاستفاده از Async لزوما به معنی سریعتر شدن اجرای برنامه نیست. تضمینی وجود ندارد که متدهای Async در Thread مجزا اجرا شوند.
Async,Await,Sync,Compareهفته ی گذشته یکی از مدیران پروژه ی ASP.NET Core به معرفی قابلیتهای جدید نسخه ی سوم پرداخت و گزارشهایی درباره وضعیت تیم و چشم انداز پیش رو ارائه کرد. در این پست به بررسی این موارد می پردازیم.
ASP.NET Core 3.0,Whats new,Updatesروش Async در عملیات های I/O Bound فوق العاده موثر عمل می کند. کار با دیتابیس و فایل در سرور از نوع I/O Bound است و همیشه می توانید از تکنیک Async برای بالا بردن بازدهی سرور استفاده کنید.
Async,Await,I/Oتا چند هفته ی دیگر نسخه ی نهایی ASP NET Core 2.2 از راه میرسد و مایکروسافت از همین حالا در حال آماده سازی نسخه ی بعدی است. همانطور که انتظار میرفت تغییرات و آپدیتهای نسخه سوم زیاد خواهد بود. در این پست آخرین وضعیت نسخه 3.0 را بررسی می کنیم.
ASP.NET Core 3.0,Microsoft,News,Updatesدر ASP NET Core ویوها به صورت پیشفرض کامپایل میشوند و درون فایل DLL پروژه قرار میگیرند. با تغییر تنظیمات Razor SDK می توانید این حالت را عوض کنید.
Razor,SDK,ASP.NET Coreبسیاری از برنامه نویسها در هنگام شروع یک پروژه ی جدید با این سوال مواجه میشوند که چگونه ساختار پروژه را طراحی کنند تا در آینده بهترین عملکرد را داشته باشد.
Clean Architecture,EF Core,Layersدر Entity framework Core قابلیتی وجود دارد به نام Global Query Filters که به شما امکان میدهد داده ها را به صوت عمومی قبل از اینکه وارد DataSet شوند فیلتر کنید.
Entity framework,ASP.NET Core, Patterns,یادگیری یک فریم ورک برنامه نویسی کار پر زحمتی است. باید وقت و انرژی زیادی صرف کنید تا درباره ی نحوه ی برنامه نویسی ، تست ، اجرا و انتشار برنامه روی سرور دانش لازم را بدست بیاورید. مشکل اینجاست که گزینه های زیادی در اختیار دارید و انتخاب یکی از آنها می تواند مسیر کاری شما را تا حد زیادی تحت تاثیر قرار دهد.
ASP.NET Core,Microsoft,Web Developmentدر Identity دو روش کلی برای بررسی اینکه آیا کاربر Authenticate شده وجود دارد.
Identity,ASP.NET,Core,Authenticationمایکروسافت با پیوستن به OIN اجازه میدهد اعضای این کنسرسیوم رایگان از تمامی 60 هزار حق اختراع ثبت شده اش استفاده کنند.
Microsoft,Open source,OIN,pattentالگوی Repository به همراه Unit Of Work سالهاست که توسط برنامه نویسان وب استفاده میشود اما آیا با معرفی ابزار جدید EF Core هچنان نیاز به پیاده سازی آنها داریم ؟
Entity framework,ASP.NET Core, Patterns,مایکروسافت مدت زیادی است که تلاش می کند مرورگر جدید خود یعنی "Edge" را بین کاربران جا بیاندازد اما تعداد کاربران این مرورگر در سال کمتر از نیم درصد رشد میکند و تعداد زیادی از کاربران قدیمی IE هم آن را رها کرده اند.
Microsoft,ASP.NET Core,Edge,Browsersروز گذشته گوگل در یک بلاگ پست اعلام کرد که قصد دارد سرویس گوگل پلاس را در طی 10 ماه آینده از خط خارج کند.
Google,Google plus, newsیکی از روشهای تشخیص هویت در Identity استفاده از Cookie است. کوکی Identity اطلاعات کاربر را رمز گذاری کرده و با هر درخواست به سرور ارسال میکند.
ASP.NET Core, Identity,Cookie,ExpireTimeSpanدر دات نت متغیرهای رشته ای به صورت Immutable هستند و در زمان اجرا مقدار آنها در حافظه قابل تغییر نیست. در عمل دات نت یک نمونه ی جدید از رشته ایجاد می کند
dotnet,strings,equals,Compareبه طور کلی در دات نت اصلاح Managed Execution Proccess برای معرفی فرآیند اجرای برنامه ها به کار برده میشود. کلمه ی کلیدی در این اصلاح عبارت Managed یا مدیریت شده است. به این معنی که در دات نت برنامه ها در یک فضای مدیریت شده اجرا میشوند.
dotnet,CLR,MSIL,Managed Code,Compilersدر 23 مارچ 2016 وقتی در ایران روز چهارم فرودین بود و ما در حال دید و بازدید عید بودیم Azer Koçulu با حذف حساب کاربری خودر در NPM باعث شد Node و Babel و هزاران برنامه ی دیگر از کار بیوفتد.
Node,NPM,Packagesاشیای تغییر ناپذیر با Immutable به اشیایی گفته میشود که بعد ایجاد شدن در حافظه قابل تغییر نیستند. این موضوع اثرات مهمی در پیاده سازی نرم افزار دارد.
Immutable,Object,C#,Threading,Stringsنمودارد رشد بازار نشان میدهد برای ورود به هر تجارتی یک زمان ایده آل وجود دارد.
Business,Startupsرکورد جهانی بازی Super Mario مدت 4 دقیقه و 56 ثانیه است. این رکورد در ماه می سال 2018 میلادی توسط شخصی به نام somewes ثبت شد.
Testing,Easter Egg,Cheetدر ASP Core اطلاعات Session را می توان در Cookie ذخیره کرد هم در حافظه ی سرور نگه داشت.
ASP.NET Core,Sessions, Cookieدر محیط ASP Core هم مانند ASP MVC سه روش برای انتقال اطلاعات از کنترلر به ویو وجود دارد.
ASP.NET Core, ViewBag,ViewData,TempDataابزار Redis محبوبترین دیتابیس جهت ذخیره سازی موقت اطلاعات در حافظه است و از آن برای کش کردن استفاده میشود.
ASP.NET Core, Redisابزار Identity در ASP Core مسئولیت تشخیص هویت و کنترلر دسترسی را به عهده دارد. این ابزار در نسخه های قبل هم وجود داشت اما مانند سایر قسمتها باز نویسی شده است. در اینجا به سه روش اصلی کنترل دسترسی در Idenity Core می پردازیم.
ASP.NET Core, Identity, UserIdهمین چند ماه پیش بود که مایکروسافت اعلام کرد پروژه ی ویندوز فون در سراشیبی است و فعلا قرار نیست مدلهای جدیدی عرضه کند. میشود گفت ماجراجویی مایکروسافت در گوشی شکست خورده است. یکی از دلایل اصلی آن هم ناتوانی رقابت با تعداد زیاد اپ های اندروید و iOs است.
PWA,Google,Microsoft,Appleبلاکچین یک دفتر است که برای نگه داری یک حقیقت (و نه اطلاعات) استفاده میشود. یک نسخه از دفتر بین همه ی کامیپوترها (نود) نگه داری میشود و برای هر تغییری در دفتر همه ی نودها باید موافقت کنند.
Blockchain,BitCoin,Nodeنسخه ی جدید تویتر برای ویندوز فون به صورت Progressive Web App عرضه شد. بعد از مدتها تلاش بالاخره تیم توسعه ی تویتر تصمیم گرفت از قابلیت های Edge برای پیاده سازی اپ استفاده کند.
PWA, Smartphone, Service Worker, App Storeفریم ورک ASP Core 2.1 دارای بیش از 30 هزار API است اما هنوز بخشی از کتابخانه های قدیمی دات نت به آن اضافه نشده است. دلیل اصلی آن هم پشتیبانی از سایر سیستم عامل هاست.
ASP.NET Core, Windows Compatibilityوقتی مایکروسافت دید که نمی تواند در زمینه ی گوشی های موبایل با اپل و در مورد موتورهای جستجو با گوگل رقابت کند تصمیم گرفت یک گام به عقب برگردد. حالا شعار Developer First Company برای مایکروسافت فقط یک شعار نیست تنها مسیر رو به جلو است. مایکروسافت با خرید GitHub گام بسیار بزرگی به سمت Developer First برداشت اما برنامه برای جذب برنامه اولی ها از چند سال پیش شروع شد.
ASP.NET Core , Microsoft, VSCodeاز روز اول که خبر خرید GitHub منتشر شد ارزش سهام مایکروسافت 1 درصد رشد کرد. برای شرکتی در ابعاد مایکروسافت 1 درصد معادل 7 میلیارد دلار است. این در حالی است که مایکروسافت قرار است گیتهاب را به قیمت 7.5 میلیارد دلار خریداری کند و انتقال هم هنوزانجام نشده !
Microsoft, GitHubوقتی 6 ماه پیش ASP.NET Core 2.0 منتشر شد هیچ کس تصور نمیکرد قابلیت RazorPage اینقدر مهم باشد. خیلی ها در نگاه اول گفتند RazorPage فقط مناسب پیاده کردن صفحات ساده مانند About و Contact است.
ASP.NET Core 2.1 , RazorPage, MVC, Controllerمنابع تایید نشده خبر میدهند که مایکروسافت سایت Github را خریداری کرده است.
Microsoft, GitHubنسخه ی ASP.NET Core 2.1 ابتدای ماه جاری میلادی منتشر شد و سایت کدهک هم جهت هماهنگی با آخرین آپدیتها به نسخه جدید بروز رسانی شد.
ASP.NET Core 2.1 , Codehaks, Updatesتیم ASP Core تلاش زیادی می کند استفاده از Razor Pages را بجای MVC جا بندازد. الگوی MVC سالها از محبوبترین روشهای پیاده سازی سایت بوده است اما اشکالاتی هم دارد.
ASP.NET Core, dotnet, Razor pagesنسخه 2.1 از فریم ورک ASP Core هفته ی دیگر رسما منتشر میشود. در این پست به معرفی قابلیت های جدید این فریم ورک می پردازیم.
ASP Core , Latest, dotnet core, MVCکتابخانه libuv پلتفرمی برای اجرای برنامه ها به صورت Async است و Kestrel از آن به عنوان موتور پایه استفاده میکند.
Libuv, Kestrel, ASP Core, Hosting, Server, Nodejsکسترل یک وب سرور است که به صورت پیشفرض روی پروژه های ASP Core نصب میشود. این سرور برای کار با پلتفرمهای مختلف طراحی شده و از سیستم عامل های مختلف پشتیبانی میکند.
ASP Core, Kestrel, Hosting, , Serverمایکروسافت به تازگی اعلام کرد در نسخه ی سوم دات نت کور از WinForm و WPF پشتیبانی میکند. پیش نمایش این نسخه تا چند ماه دیگر عرضه میشود اما نسخه ی نهایی سال 2019 در اختیار برنامه نویسان قرار می گیرد.
ASP NET Core, Core 3.0 , Previewاگر قبلا با سرویسهایی مثل بلاگفا کار کرده باشید می دانید قالب های این وبلاگ با کد نویسی قابل تغییر است. کدهایی مثل زمان درج پست یا محل نمایش عنوان پست وجود دارد که هرجای قالب قرار دهید بعدا توسط سرور بلاگفا پر میشود. کار موتورهای تولید سایت استاتیک هم به همین شیوه است.
Hugo, Static Site Generator, Markdownوب اسمبلی استاندارد جدیدی است که امکان اجرای کد Nativeدر مرورگر را فراهم میکند یعنی می توانید بجای جاوااسکریپت با #C در مرورگر برنامه نویسی کنید.
Web Assembly, Blazor, Native, Csharpنسخه ی 2.1 از EF قابلیت های جدیدی نظیر سید داده دارد. همچنین "بارگذاری تاخیری" هم به آن اضافه شده است.
ٍEntity framework, ASP Core, Database, ORMدر کنفرانس google I/O امسال که همزمان با Build برگزار شد گوگل اعلام کرد نسخه ی جدید Flutter صد در صد در VSCode پشتیبانی میشود و یک افزونه ی اختصاصی برای آن در نظر گرفته شده است.
Flutter, SDK, VS Code, Google, Dart2دات نت کور 3 تا آخر سال میلادی عرضه میشود و قابلیت برنامه نویسی WPF و WinForm به آن اضافه خواهد شد. در کنفرانس یک دمو از نحوه ی کار آن نمایش داده شد که سرعت اجرای آن دوبرابر دات نت 4.5 بود.
dotnet, Core 3, UWP, WPF, WinFormکنفرانس بیلد 2018 با برگذاری 350 نشست تخصصی به پایان رسید و حالا می توانیم نگاهی بیاندازیم به آنچه در آن گذشت.
Build2018, Review,Blazor,ASP Core, Azureقابلیت هوش مصنوعی Intellicode به ویژوال استودیو اضافه شد. این ابزار قرار است با استفاده از Machine Learning تجربه ی برنامه نویسی را بهبود بخشد.
Visual Studio , Tooling, Coding,Intellicodeهر ترانکش دیتابیس باید از 4 اصل ACID پیروی کند تا داده های آن قابل اعتماد باشد. قوانین ACID تضمین میدهد اطلاعات ذخیره شده در دیتابیس معتبر است و اگر غیر از این باشد آن را ذخیره نمیکند.
Database, ACIDموتور V8 مترجم و کامپایلر جاوا اسکریپت است که در Chrome و NodeJS استفاده میشود. این موتور کارش تبدیل استاندارد EcmaScript به کد و اجرای آن است. بخش اعظم این تکنولوژی در کشور آلمان پیاده سازی میشود.
Javascript, V8 Engine, Compilerساتیا نادلا مدیر عامل مایکروسافت دیروز در کنفرانس بیلد حاضر شد . او ضمن اشاره به اهمیت حفظ حریم شخصی دو محصول Azure و Microsoft 365 را به عنوان اولویت اول توسعه در مایکروسافت معرفی کرد.
Build 2018,Microsoft,Keynoteطبق استاندارد HTTP متد PUT باید به صورت Idempotent پیاده شود. به این معنی که اگر چند بار پشت سر هم اجرا شود همیشه نتیجه ی یکسان دهد.
HTTP,POST,PUT,REST, Web API,Standardداکر وابستگی نرم افزار به سیستم عامل را از بین می برد و ASP Core به طور کامل از آن پشتیبانی می کند. هر داکر شامل یک یا چند کانتینر است که کد پروژه و دیتابیس را درون یک فایل جای میدهد.
Docker,Publishدیتابیس RavenDB از نوع Document است و در زبان سی شارپ با دات نت Core برنامه نویسی شده است.
RavenDb, DocumentDB,Database,SQLدر یک نرم افزار Race Condition زمانی روی میدهد که چند بخش به دنبال تغییر یک داده مشترک باشند. وقتی ترتیب اجرای متدها بهم بریزد برنامه کرش میکند.
Race Condition, Software, Bugsفایلهای استاتیک (مانند عکس و استایل) در ASP Core مستقیما میزبانی میشوند. در گذشته این وظیفه به عهده ی IIS بود.
ASP Core, Static Files, Middlewaresروزلین کامپایلر سورس باز #C و VB است که به صورت پکیج به پروژه اضافه می شود و می توان از آن برای تحلیل و تولید کد استفاده کرد.
Roslyn, C#, Compiler , Visual Studio