وبگاه شخصی حسن فتحی

۵ مطلب با موضوع «آموزش» ثبت شده است

پنج مرحله برای رسیدن به یک مصاحبه شغلی عالی

مصاحبه یا گفتگو؟

افرادی که دنبال کار هستند با این مقوله بیشتر سرو کار دارند و درگیر هستند، و حتی اکثر افراد با شنیدن کلمه “مصاحبه” دچار استرس می شوند؛ اما باید توجه داشت که مصاحبه شغلی هم یک گفتگوی دوستانه صرفا برای شناخت طرفین (شرکت مربوطه و کارجو) جهت نیل به هدف شغلی مورد نظر است.

باید به این نکته توجه داشت که در مصاحبه نیاز بازار رو می شود از نزدیک لمس کرد و هم به توانایی ها و پتانسیل های خود پی برد.

اجازه بدید در ادامه چند نکته مهم در رابطه با مصاحبه شغلی رو مرور کنیم

در نظر داشته باشید که فرض کردیم شما توانایی های فنی مورد نیاز برای شروع کار را در رابطه با شغل مورد نظر دارید.

ادامه مطلب ...

۰۹ مهر ۹۵ ، ۲۳:۰۸ ۰ نظر موافقین ۱ مخالفین ۰
حسن فتحی

IEnumerable VS IQueryable in .Net Framework

دو عنصر بالا از شی ها یا به عبارتی نوع داده های (Data Type) دات نت هستند؛ ما از IEnumerable  و IQueryable برای دستکاری داده استفاده می کنیم (LINQ). در دات نت IEnumerable  توسط IQueryable  به ارث برده می شود به عبارتی دیگر IQueryable  همه ویژگی های IEnumerable  دارد و علاوه بر آن ها ویژگی های منحصر به فرد خود را نیز دار؛ هر دوی این دو شی برای بازیابی و دستکاری داده های موجود در پایگاه داده (Database) به کار می روند. اجازه دهید ویژگی های هر کدام و برتری آنها نسبت به هم را نام ببرم؛ که نقش مهمی در بالا بردن سرعت و کارایی پرس و جوهای (LINQ) دارند.
دو عنصر بالا شباهت زیادی به هم دارند و همه برنامه نویسان از هر دو آنها استفاده می کنند ولی از لحاض کارایی در سناریوهای مختلف متفاوت عمل می کنند.

IEnumerable  :
  • فضای نام (System.Collections)
  • بهترین مورد استفاده آن در بازیابی داده از شی های موجود در حافظه (in-Memory Objects) مانند لیست، آرایه و ... است 
  • موقعی که بازیابی داده از پایگاه داده انجام می شود IEnumerable  پرس و جو را سمت سرور اجرا کرده و داده ها را در شی های in-Memory در سمت کلاینت بارگذاری کرده و بعد عمل فیلترینگ را انجام می دهد
  • بهترین و مناسب ترین برای پرس و جوهای LINQ to Object و LINQ to XML
  • پشتیبانی از (deferred execution)
  • عدم پشتیبانی از پرس و جوهای سفارشی (custom query)
  • عدم پشتیبانی از (lazy loading) و نامناسب برای صفحه بندی (paging)
IQueryable :
  • فضای نام (System.Linq)
  • بهترین مورد استفاده آن در بازیابی داده از شی های موجود در خارج حافظه (out-Memory Objects) مانند پایگاه داده ها، سرویس ها و ... است 
  • موقعی که بازیابی داده از پایگاه داده انجام می شود IQueryable پرس و جو را سمت سرور با انجام  عمل فیلترینگ اجرا می کند
  • بهترین و مناسب ترین برای پرس و جوهای LINQ to SQL
  • پشتیبانی از (deferred execution)
  • پشتیبانی از پرس و جوهای سفارشی (custom query) با استفاده از CreateQuery و Execute methods.
  • پشتیبانی از (lazy loading) و مناسب برای صفحه بندی (paging)
مثال :
IEnumerable  :
  1. MyDataContext db = new MyDataContext ();
  2. IEnumerable<Employee> list = db.Employees.Where(p => p.Name.StartsWith("S"));
  3. list = list.Take<Employee>(10);
پرس و جوی تولید شده :
  1. SELECT [t0].[EmpID], [t0].[EmpName], [t0].[Salary] FROM [Employee] AS [t0]
  2. WHERE [t0].[EmpName] LIKE @p0
توجه : اجرای پرس و جو سمت سرور (SQL SERVER) و فیلتر کردن آن سمت کلاینت توسط شی موجود در حافظه کلاینت

IQueryable :
  1. MyDataContext db = new MyDataContext ();
  2. IQueryable<Employee> list = db.Employees.Where(p => p.Name.StartsWith("S"));
  3. list = list.Take<Employee>(10);
پرس و جوی تولید شده :
  1. SELECT TOP 10 [t0].[EmpID], [t0].[EmpName], [t0].[Salary] FROM [Employee] AS [t0]
  2. WHERE [t0].[EmpName] LIKE @p0
توجه : اجرای پرس و جو سمت سرور (SQL SERVER) و فیلتر کردن آن در همان سمت
۱۵ اسفند ۹۴ ، ۱۰:۳۶ ۱ نظر موافقین ۱ مخالفین ۰
حسن فتحی

روش یا قانون 15 دقیقه

این قانون رو هممون میدونیم و بدیهیه؛ و تقریبا واسه حداکثر مردم هم اثبات شدس خب معلومه که انجام دادنش هم به ظاهر آسونه ولی هممونم میدونیم که خیلی سخته ... 

ولی ارزش تلاش برای انجامش رو داره تو هر زمینه ای؛ حداقل همه میتونن تلاش کنن واسه انجامش و امکان موفقیتم هم تقریبا درصدش خیلی بالاس، من هدفم از این پست اشاره دوباره به این قانون و ترغیب شما برای انجام این روشه؛ امیدوارم که تاثیر گذار باشه.

این قانون به قدرت تغییرات کوچک اشاره دارد!

تکرار کارهایی کوچک نه تنها شخصیت انسان را می سازد بلکه شخصیت ملت ها را تعیین می کند.(ساموئل اسمایلز)

۱-اگر روزی ۱۵ دقیقه را صرف خودسازی کنید؛ در پایان یک سال تغییر ایجاد شده در خویش را به خوبی احساس خواهید کرد.

۲-اگر روزی ۱۵ دقیقه از کارهای بی اهمیت خویش بکاهید؛ ظرف چندسال جهالتمان تبدیل به خرد خواهد شد.

۳-اگر روزی ۱۵دقیقه رابه فراگیری زبان اختصاص دهید از هفته ای یک بار کلاس زبان رفتن بهتر است.

۴-اگر روزی ۱۵دقیقه را به پیاده روی سریع اختصاص دهید از هفته ای چند بار به باشگاه ورزشی رفتن ؛ نتیجه ی بهتری خواهید گرفت.

۵-اگر روزی ۱۵ دقیقه مطالعه وسلول های خاکستری خویش را درگیر کنید؛ به پیشرفت های عظیم یادگیری دست خواهید یافت…

زیبایی روش یا قانون ۱۵ دقیقه در این است که آن قدر کوتاهست که هیچ وقت به بهانه ی این که وقت ندارید آن را به تاخیر نمی اندازید.

۰۵ اسفند ۹۴ ، ۱۱:۵۷ ۰ نظر موافقین ۰ مخالفین ۰
حسن فتحی

نظارت بر عملکرد و کارایی پایگاه داده با استفاده از Query Store در SQL SERVER 2016

قابلیت  Query Store امکانی را برای مدیران پایگاه‌ داده‌ها فراهم می‌کند تا با بینشی عمیق برای کوئری های خود Execution Plan (طرح پرس و جو)ی مناسبی را در جهت بهبود کارایی و عملکرد پایگاه داده خود انتخاب کنند. این امکان شما را قادر می‌سازد تا با یک عیب‌یابی ساده عملکرد تاثیرات ناشی از تغییرات کوئری‌ها در طرح پرس و جو را ردیابی کرده و با مشاهده تفاوت عملکردها بهترین کوئری را (از لحاظ کارایی) انتخاب کنید؛ این امکان به طور خودکار تاریخچه کوئری ها، طرح کوئری ها و آمار های زمان اجرا را ذخیره و برای استفاده و بازبینی شما نمایش می دهد، داده ها را بر اساس ساعت سیستم (زمان ویندوز) جدا و دسته بندی می‌کند و به شما اجازه می‌دهد الگوهای استفاده از پایگاه داده را مشاهده و تغییرات Execution Plan ها را روی سرور مشاهده کنید.

فعال سازی Query Store:
توسط صفحه Query Store در Management Studio :
1- روی پایگاه داده راست کلیک کرده و گزینه Properties را انتخاب کنید
2- در Database Properties روی گزینه Query Store کلیک کنید
3- در جعبه Enable  گزینه True را انتخاب کنید
توسط دستور ALTER DATABASE :
ALTER DATABASE dataBase_Name SET QUERY_STORE = ON;
بعد از فعال سازی این امکان Object Explorer را Refresh کنید تا بخش Query Store در پایگاه داده شما اضافه شود. بعد از اضافه شدن یکسری توابع، وییو و روال و کوئری ها هستند که با استفاده از آن ها میتوانید Query Store را مدیریت کنید.
هفت وییو برای ارائه اطلاعات درباره Query Store وجود دارد:

شش Stored Procedure برای پیکربندی Query Store وجود دارد:



برای اطلاعات بیشتر و تکمیلی به MSDN مراجعه کنید.
۱۰ دی ۹۴ ، ۱۶:۱۸ ۱ نظر موافقین ۰ مخالفین ۰
حسن فتحی

تلنت یاب | ارزیابی | آزمون شخصیتی | توسعه فردی

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


**برای مشاهده عکس زیر را کلیک کنید**

۳۰ آبان ۹۴ ، ۱۸:۱۸ ۰ نظر موافقین ۰ مخالفین ۰
حسن فتحی