تفاوت بین متد های http و web API
آموزش Web API
اگر خیلی ساده بخواهیم این موضوع را بررسی کنیم باید بگوییم که متدهای http برای این منظور طراحی شده اند که پاسخ یک درخواست کاربر را در قالب استاندارد صفحات html پاسخ دهند اما در web api شما به طراحی یک وب سرویس می پردازید که این وب سرویس فارغ از نوع کاربر و سیستم آن می تواند فراخوانی شود و اطلاعات لازم را دریافت و پردازش کند و نتیجه را در یک قالب برای فرستنده ارسال کند.
سوال شما از جنبه ای بسیار صیح است زیرا مایکروسافت در حال هدایت تکنولوژی خود به سمت وب سرویس می باشد به گونه ای که شما تمامی متد های خود را به شکل وب سرویس یا همان web api طراحی کنید و این در آخرین نسخه ی وب مایکروسافت با نام vNext قابل مشاهده است. از سوی دیگر نیز همین سادگی و شباهت بسیار زیاد Action های یک کنترلر ساده با متدهای web api بیانگر همین مطلب است که مایکروسافت قصد دارد مشکلات و پیچیدگی های طراحی وب سرویس را حذف کند تا نوشتن وب سرویس بسیار ساده باشد.
تفاوت بین IQueryable, ICollection, IList & IDictionary interface
بسم الله الرحمن الرحیم
همه ی این ها از interfaces ایی با نام IEnumerable ارث بری می کنند و هر یک متدها و ساختار متفاوتی دارند که وابسته به نوع کاربردشان باید مورد استفاده قرار بگیرند.
ICollection
این یکی از interfaces های اصلی در خصوص IEnumerable ها می باشد که قابلیت های شمارش (Count) و پارامترهای مربوطه را در اختیار شما قرار می دهد.
IList
تمامی ویژگی های ICollection را دارد و علاوه بر آن قابلیت پشتیبانی از متدهای add و remove کردن item ها و دسترسی به آنها از طریق index را نیز داراست. این نوع بیشتر برای کار با لیستی از اشیاء مورد استفاده قرار می گیرد.
validation failed for one or more entities. see 'entityvalidationerrors' property for more details
بسم الله الرحمن الرحیم
همه ی ما با خطای زیر برخورد کرده ایم.
اگر یک Model داشته باشیم که تعداد فیلد های آن بسیار زیاد باشد، طبیعتا پیدا کردن فیلدی که باعث بروز این خطا شده است کار ساده ای نخواهد بود.
چطور می توان به سرعت اینگونه خطاها را بررسی و رفع کرد؟
پشتیبانی از فایل های json در IIS
بسم الله الرحمن الرحیم
ممکن است شما نیاز داشته باشد در پروژه ی خود از فایل های JSON استفاده کنید. به صورت پیش فرض فایل های JSON توسط IIS پشتیبانی نمی شوند اما به تنظیمات بسیار ساده ای می توانید این کار را در IIS انجام دهید.
پشتیبانی از فایل های json در IIS
برای شروع IIS خود را باز کنید و مراحل زیر را یکی پس از دیگری انجام دهید.
ابتدا بر روی گزینه ی مشخص شده کلیک کنید.
split کردن عناصر با linq
بسم الله الرحمن الرحیم
آموزش برنامه نویسی
اگر یک لیست به صورت زیر داشته باشیم که با یک کاراکتر خاص جدا شده باشند و بخواهیم آن ها را به صورت آیتم های جداگانه بررسی کنیم. چطور می توانیم اینکار را انجام دهیم.
string[] websites = {"Ably.ir,Google.com,Yahoo.com,Linkedin.com"};
این مشکل در لیست های json بسیار اتفاق می افتد که ما نیاز داریم عناصر را به صورت جداگانه بدست آوریم. برای این مشکل می توانید با یک دستور LiNQ ساده اطلاعات خود را بر اساس کاراکتر جداکننده به صورت عناصر جداگانه بدست آورید. برای اینکار کافی است از کوئری زیر استفاده کنید.
websites.SelectMany(n => n.Split(',')).ToList();
آموزش نصب وردپرس
بسم الله الرحمن الرحیم
آموزش نصب وردپرس
بخش سوم
آموزش وردپرس
اگر خاطرتان باشد در مباحث ابتدایی در خصوص CMS ها صحبت کردیم و وردپرس را معرفی کردیم. در این آموزش می خواهیم وردپرس را بر روی سیستم خود نصب کنیم، اما پیش از نصب می بایست چند نکته را بررسی کنیم.
برای استفاده از وردپرس شما می بایست یا یک سرور PHP خریداری کنید و سایت خود را روی آن قرار دهید و یا بر روی کامپیوتر خود نرم افزارهای مربوطه را برای اجرای وردپرس نصب کنید. همانطور که اطلاع دارید سیستم وردپرس با زبان PHP نوشته شده است در نتیجه شما می بایست مفسر و نرم افزارهای مورد نیاز برای اجرای دستورات PHP را بر روی کامپیوتر خود نصب کنید. یکی از بهترین نرم افزارهای موجود برای این فعالیت، نرم افزار xampp می باشد. در مطلب آموزش نصب xampp نحوه راه اندازی و نصب و در نهایت تنظیمات xampp را بررسی کردیم. این مطلب را می توانید از طریق لینک زیر مطالعه کنید.
آموزش wmi (بخش دوم)
بسم الله الرحمن الرحیم
آموزش برنامه نویسی
دوره آموزشی WMI (بخش دوم)
در بخش اول آموزش wmi در خصوص wmi و ویژگی های این فریم ورک صحبت کردیم، در این بخش قصد داریم برخی از اطلاعاتی که توسط wmi می توان مورد دستیابی قرار داد را بررسی کنیم.
آموزش wmi
برای دسترسی به بانک اطلاعاتی WMI روش های بسیار زیادی وجود دارد، دو روش را ابتدا بررسی خواهیم کرد و سپس بر اساس یکی از ساده ترین روش ها برنامه ای را در این خصوص طراحی و پیاده سازی خواهیم نمود.
WMI مجموعه از اطلاعاتی است که توسط (WBEM (Web-Based Enterprise Management و (CIM (Common Information Model به صورت استاندارد برای (DMTF (Distributed Management Task Force توسعه داده شده است. در مورد هر یک از بخش های CIM و WBEM و DMTF می توانید اطلاعات بیشتر را از طریق MSDN مایکروسافت مطالعه کنید.
آموزش WBEM Test
WMI از نسخه 2000 Windows به بعد بر روی Windows موجود است. از همین رو شما می توانید توسط ابزاری با نام WBEM Test به اطلاعات این پایگاه داده دسترسی داشته باشید.
برای دسترسی به برنامه WBEM Test کافی است از طریق کلیدهای ترکیبی window + R ( منظور از Window کلید پنجره بر روی کیبورد می باشد) برنامه RUN را باز کنید و سپس دستور wbemtest را درون آن اجرا کنید.
پس از اجرای این برنامه، در ابتدا باید به WMI Repository متصل شود. اگر بخواهیم WMI Repository را توضیح دهیم، خیلی ساده می توان گفت WMI Repository یک پایگاه داده می باشد که شما می توانید اطلاعات مورد نیاز خود را از طریق این پایگاه داده بدست آورید.
برای شروع بر روی گزینه Connect کلیک کنید، و مطمئن شوید که namespace اصلی این کتابخانه، یعنی “root\cimv2” انتخاب شده است.
الگوهای برنامه نویسی (abstract factory)
بسم الله الرحمن الرحیم
بخش ششم
الگوهای برنامه نویسی
الگوی Abstract Factory
در آموزش قبل با روش Method Factory آشنا شدیم، در این روش با الگوی برنامه نویسی Abstract Factory آشنا خواهیم شد.
در روش Method Factory تمامی اشیا توسط یک متد ایجاد می شدند، اما در روش Abstract Factory هر کلاس یک سازنده جداگانه خواهد داشت و البته همه ی این سازنده ها در کلاس اصلی ما قرار می گیرند.
آموزش Method Factory
در Abstract Factory ما یک Interface اصلی خواهیم داشت که مجموعه ای از Object های وابسته را تعریف می کند. در Abstract Factory ما وظیفه ی تولید هر شی را به Factory مربوطه اش واگذار می کنیم، اینجاست که اگر بعد از مدتی از ما خواسته شود که برنامه را بسط بدهیم تنها با ایجاد یک Factory مشکل را می توانیم حل می کنیم.
روش Abstract Factory برای ایجاد اشیای مرتبط مورد استفاده قرار می گیرد، این روش به دلیل اینکه تمامی اشیا را به صورت واحد طراحی و ایجاد می کند روش Factory of factories نیز خوانده می شود، همانطور که گفته شد در روش Abstract Factory یک interface مسئولیت ایجاد و ساخت اشیاء مرتبط را به عهده دارد.
سئو سایت
بسم الله الرحمن الرحیم
سئو سایت
برای پیاده سازی فازهای سئو سایت می بایست پارامترهای تاثیر گذار سئو یکی پس از دیکری انجام شود. مجموعه ی Ably در خصوص پیاده سازی این پارامترها فازهای مختلف سئو سایت را بر روی وب سایت مشتریان خود به انجام می رساند.
بهینه سازی سایت
در خصوص بهینه سازی وب سایت، مجموعه ABLY با استفاده از بروزترین سرو یس های موجود و همچنین سرویس های اختصاصی خود، این توانایی را دارد که بهینه سازی وب سایت مشتریان خود را کوتاه ترین زمان ممکن به انجام رساند و همچنین بهترین نتایج را ارائه دهد.
روش ها و پارامترهای زیادی در خصوص SEO مطرح هستند، با توجه به این مسئله که هر Search Engine ایی الگوریتم های خاص خود را برای رتبه بندی وب سایت ها دارد، در این جا کلیت فرایند هایی که بر روی وب سایت مشتریان انجام می شود به صورت تیتر وار معرفی شده است.
بررسی سئو وب سایت
در فاز ابتدایی کلیت وب سایت شما مورد بررسی قرار خواهد گرفت که بر اساس آن لیستی از مشکلات وب سایت مشخص خواهد.
در این بررسی از ابزارها و تکنینک ها و روش های مختلفی استفاده می شود که بر اساس اطلاعات بدست آمده می توان برنامه ریزی و زمان بندی های لازم را به انجام رساند.
هزینه سئو
با توجه به گستردگی و بودجه هر سازمانی برای وب سایت خود پیش از برنامه ریزی نیاز می باشد تا سازمان مذکور منابع و توانایی خود را در جهت بهینه سازی وب سایت خود مشخص کند.
بررسی مشکلات فنی وب سایت
بسیاری از وب سایت های امروزی از لحاظ موارد فنی دارای مشکلاتی هستند که این مشکلات باعث می شوند، فرایندها و بخش های مرتبط با بهینه سازی سایت دچار کاستی گردند. از همین رو در فازهای ابتدایی بررسی های فنی وب سایت صورت خواهد گرفت تا در کمترین زمان ممکن این مشکلات بر طرف گردند.
آموزش نصب phpstorm
بسم الله الرحمن الرحیم
آموزش فارسی لاراول
آموزش laravel
بخش دوم
در بخش پیش در خصوص کلیت فریم ورک های PHP صحبت کردیم و مزایا و معایب فریم ورک ها را نیز بررسی کردیم. در این بخش قصد داریم ابزارهای مورد نیاز خود را جهت کار با لاراول را نصب کنیم.
برای شروع کار با فریم ورک لاراول می بایست ابتدا نرم افزارها و ابزارهای مورد نیاز را نصب کنیم. امکانات مورد نیاز برای اجرای لاراول:
- Php ورژن 5.5.9 یا بالاتر
- نصب بودن Extension های : OpenSSL- PDO- Mbstring-Tokenizer (در خصوص این Extension ها صحبت خواهیم کرد و روش های فعال سازی آن ها را آموزش خواهیم داد) .
- Apache Server
برای اجرای یک برنامه که به زبان php نوشته می شود نیازمند موارد زیر هستید.
- Apache: آپاچی یک وب سرور متن باز رایگان است که بر روی تمامی توزیع های لینوکس و همچنین سیستم عامل ویندوز قابل نصب و اجراست.
- MySQL :MySQL یکی از محبوب ترین DBMS ها می باشد. DBMS مخفف database management system می باشد، همانطور که از نام آن مشخص است وظیفه مدیریت بانک های اطلاعاتی را بر عهده دارد.
- PHP: یک زبان برنامه نویسی سمت سرور، متن باز رایگان ت که از بهترین گزینه ها جهت گسترش صفحات وب می باشد.
برای شروع کار می توانید هر کدام از موارد فوق را به صورت مجزا نصب نمایید و پس از انجام تنظیمات لازم از آنها استفاده نمایید ولی راه ساده تر استفاده از نرم افزارهایی مثل xampp یا wamp یا lamp است.اینکه از کدام یک از نرم افزارهای مذکور استفاده می نمایید چندان تفاوتی ندارد.
فقط باید توجه داشته باشید که ورژنی را نصب نمایید که ورژن php آن با نسخه لاراول شما سازگاری داشته باشد، از همین رو بهتر است آخرین نسخه ی یکی از نرم افزار های xampp یا wamp یا lamp را نصب کنید.
آموزش کار با زمپ
در آموزش لاراول از xampp استفاده خواهیم کرد ولی اگر توضیحاتی در wamp هم لازم بود ارائه خواهد شد. برای نصب و راه اندازی زمپ می توانید از آموزش زیر استفاده کنید، تمامی مراحل در آموزش زیر به صورت مفصل توضیح داده شده اند.
آموزش XAMPP