Email: info@developit.ir
نمایش ۱ تا ۱۵ مورد از کل ۱۵ مورد.

elasticsearch چیست؟ آموزش نصب elasticsearch در لینوکس


elasticsearchelasticsearch، یک موتور جستجو و تحلیلگر توزیع شده است که برای تعامل با آن از restful api استفاده میشود، قالب ارسال و دریافت اطلاعاتش json است.

اولین نسخه از elasticsearch در سال 2010 عرضه شد و در حال حاضر نسخه 5.0.1 آن هم در دسترس میباشد.

با جاوا توسعه داده شده، متن باز و تحت مجوز ASL میباشد.

 

بیشتر بخوانید

درس های yii2 شماره 8: login و دسترسی به قسمت backend

قبلا در مورد قالب های yii2،  پیکره بندی پایگاه داده و database migration توضیحاتی داده ام که لازم است قبل از مطالعه این درس ابتدا به هر سه موضوع سَری بزنید.

اگر از قالب advanced استفاده میکنید و تصمیم دارید وارد قسمت backend فریم ورک شوید(قسمتی که به طور معمول جهت پیاده سازی بخش مدیریتی پروژه از آن استفاده میشود) متوجه خواهید شد که نیاز به لاگین دارید.

http://localhost/advanced/backend/web/index.php?r=site%2Flogin

در درجه اول شما تا کنون هیچ نام کاربری در پروژه نساختید و حتی اگر بخواهید این کار را انجام دهید(قسمت signup که لینک آن در بخش frontend، منوی بالای صفحه است) با خطای "جدول user وجود ندارد" مواجه خواهید شد.

http://localhost/advanced/frontend/web/index.php?r=site%2Fsignup

برای حل این موضوع و دسترسی به قسمت backend پروژه باید مراحل زیر را طی کنید:

- پیکره بندی پایگاه داده را انجام دهید.

- داخل پروژه ابزار خط فرمان را باز کرده و دستور yii migrate را اجرا کنید. با اجرای این دستور migration مقدار دهی اولیه شده و جدول user هم ساخته خواهد شد.

- روی لینک signup که در منوی بالای قسمت fronend وجود دارد کلیک کنید و یک کاربر جدید بسازید.

- بعد از ایجاد کاربر به طور خودکار login میشود، در همان منو لینک logout و login هم وجود دارد.

درس های yii2 شماره 7: database migration

 در زمان توسعه یک نرم افزار پایگاه داده محور، ساختار پایگاه داده درست مثل سورس نرم افزار توسعه پیدا میکند...

به عنوان مثال، در هنگام توسعه نرم افزار ممکن است به یک جدول جدید نیاز پیدا کنید یا پس از اتمام پروژه و ارائه نسخه ی پایدار آن شاید به این نتیجه برسید که اضافه کردن شاخص(index) به ساختار یک جدول باعث بهبود کارایی نرم افزارتان میشود و...

از آنجایی که معمولا با اینگونه تغییرات باید کمی سورس نرم افزار را هم تغییر دهید yii از database migration پشتیبانی میکند.

migration در yii این امکان را به شما میدهد تا بتوانید یک migrate جدید ایجاد، اعمال، بازگردانی یا اعمال مجدد کنید. نتیجه ی تمام migrate های ایجاد شده تاریخچه ای از توسعه ی دیتابیس شماست که میتوانید ساختار و گاهی محتوای اندکی از دیتابیس را همیشه در کنار نرم افزار خود داشته و به آسانی آن را مدیریت کنید.

تمام این امکانات از طریق خط فرمان(command line) قابل استفاده هستند، میتوانید برای مشاهده توضیحات migration در خط فرمان از دستور

yii help migrate

استفاده کنید.

بیشتر بخوانید

درس های yii2 شماره 6: تولید خودکار کد با استفاه از Gii

gii ابزاری در yiiframework است که با استفاده از آن میتوان امکانات متداول/رایج وبسایت را به سرعت ایجاد کرد.

در واقع gii با دریافت یک سری اطلاعات به طور خودکار بخش های مورد نیاز را تولید میکند.

ایجاد، خواندن، بروزرسانی و حذف(Create, read, update and delete) که به اختصار CRUD نیز خوانده میشود چهار عملکرد اساسی مدیریت داده ها در برنامه نویسی هستند. که ممکن است در همه یا بیشتر بخش های یک وبسایت مورد نیاز بوده و تکرار شده باشند. مانند افزودن یک مطلب، بروزرسانی پروفایل کاربری یا  پیوند جدید و...

gii با تولید خودکار CRUD سعی دارد برنامه نویس را در قسمت های مختلف نرم افزار درگیر مسائل تکراری و زمان بر نکند.

بیشتر بخوانید

درس های yii2 شماره 5: ActiveRecord چیست؟

active record pattern الگوی طراحی‌ای است که معمولاً در نرم‌افزارهایی که از پایگاه‌های دادهٔ رابطه‌ای برای ذخیره داده‌های خود بهره می‌برند به کار می‌رود.

active record pattern روشی برای دستیابی داده‌ها از درون پایگاه داده است. یک جدول پایگاه داده یا نما توسط یک کلاس همپوشانی می‌شود، بنابراین یک نمونه از شی برای یک سطر یکتا در جدول گره می‌خورد. پس از ساخت یک شی، سطر جدیدی به جدول افزوده می‌شود. هر شی‌ای که بارگذاری می‌شود اطلاعات خود را از پایگاه‌داده می‌گیرد. هنگامی که شی‌ای به‌روز می‌شود، سطر متناظرآن جدول نیز به‌روز می‌شود. کلاس همپوشان متدها یا خواص دستیابی برای هر ستون در جدول را پیاده‌سازی می‌کند. این الگو معمولاً توسط ابزارهای پایدار شی یا object persistence tools و در نگاشت رابطه‌ای شی یا object-relational mapping به‌کار می‌رود. معمولاً روابط کلیدخارجی همچون نمونه شی‌ای که دارای نوع مناسب است توسط یک خاصیت نشان داده می‌شوند. پیاده‌سازی active record pattern را می‌توان در فریم‌ورک‌های گوناگون و محیط‌های برنامه‌نویسی بسیاری یافت. برای نمونه، اگر در یک پایگاه‌داده جدولی با نام parts با ستون‌های name (از نوع رشته‌ای) و price (از نوع صحیح) وجود داشته باشد. الگوی active record pattern در کلاسی با نام part پیاده‌سازی می‌شود. این پیاده‌سازی در شبه‌کد زیر چنین است:

part = new Part()
part.name = «Sample part»
part.price = ۱۲۳٫۴۵
part.save()

 شبه‌کد بالا سطر جدیدی را در جدول parts با مقادیر داده شده می‌سازد و تقریباً معادل دستور SQL زیر است:

INSERT INTO `parts` (`name`, `price`) VALUES ('Sample part', ۱۲۳٫۴۵);

 

بیشتر بخوانید

درس های yii2 شماره 4: پیکره بندی دیتابیس

قبل از پیکره بندی دیتابیس، ابتدا باید مطمئن باشید که اکستنشن pdo در PHP نصب/فعال باشد. این موضوع دقیقا برای PDO driver دیتابیس شما هم صدق میکند.(به عنوان مثال اگر از MySQL استفاده میکنید باید pdo_mysql را هم بررسی کنید تا فعال و قابل استفاده باشد.)

اگر از قالب basic استفاده میکنید config/db.php و اگر با advanced کار میکنید common/config/main-local.php را باز و ویرایش کنید.

'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=yii2advanced',
'username' => 'root',
'password' => '',
'charset' => 'utf8'

در قالب advanced برای backend یا frontend پروژه میتوان تنظیمات دیتابیس متفاوتی قرار داد، برای این کار کافیست به عنوان مثال در  backend/config/main-local.php داخل components اطلاعات دیتابیس را وارد کرد. اگر چنین اطلاعاتی در مسیر backend/config/main-local.php وجود داشته باشد framework از این پیکره بندی جهت کار با دیتابیس استفاده میکند در غیر این صورت به سراغ common/config/main-local.php خواهد رفت.

 

'components' => [
    'db' => [
        'class' => 'yii\db\Connection',
        'dsn' => 'mysql:host=localhost;dbname=yii2advanced',
        'username' => 'root',
        'password' => '',
        'charset' => 'utf8',
    ],
.
.
.

 به طور معمول برای پیکره بندی از این روش استفاده میشود اما اگر شما نیاز به پیکره بندی خاصی همرا با پارامتر های متفاوتی دارید میتوانید یک نمونه از yii\db\Connection ایجاد و مقداردهی کنید.

درس های yii2 شماره 3: مسیریابی

مسیریابی در yii2 شامل دو مرحله است

- تجزیه درخواست ورودی به مسیر و query parameters

- تناظر یک controller action به مسیر و رسیدگی به درخواست

اصلی ترین واحد یک کنترلر action ها هستند که میتوان با استفاده از آنها به اجرای درخواست کاربران رسیدگی کرد.

 زمانی که از فرمت پیش فرض URL استفاده میکنید، درخواست کاربر به مسیر و یک پارامتر GET به نام r تجزیه میشود.

برای اجرا و رسیدگی به درخواست کاربر باید controller action مشخصی برای مسیر ایجاد کنید.

یک مسیر به وسیله ی کاراکتر "/" به چند قسمت شکسته میشود. به عنوان مثال site/index به دو قسمت site و index شکسته خواهد شد. هر قسمت معادل یک شناسه است که به واحدی منسوب خواهد گشت(یک controller یا یک action).

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

درس های yii2 شماره 2: نصب yii framework 2 در ویندوز و لینوکس

1) به صفحه دانلود yii2 برید و با توجه به نیازتون قالب advanced یا basic رو دانلود کنید. (تفاوت قالب advanced و basic در yii framework 2)

2) فایل دانلود شده رو در هاست خود آپلود و از حالت فشرده خارج کنید.

3) وارد پوشه framework بشین و

در ویندوز: 

نرم افزار cmd رو اجرا کنید، init رو تاپیپ و بعدش enter بزنید.

در لینوکس: 

terminal رو اجرا کنید، php init رو تایپ و بعدش enter بزنید.

4) از شما پرسیده میشه که مقداردهی اولیه framework در چه محیطی باشد؟ عدد 0 معادل توسعه و 1 یعنی تجاری. از اونجایی که هدف ما پیاده سازی/توسعه یک نرم افزار جدید هست نه انتشار نهایی آن عدد 0 را تایپ و enter میزنیم. برای اطمینان از انتخاب شما و اینکه اشتباه نکرده باشید باز هم سوالی پرسیده میشود که به عنوان پاسخ yes را تایپ کنید.

 5) اگر همه چیز درست انجام شده باشه باید صفحه خوش آمد گویی yii رو ببینید.

درس های yii2 شماره 1: تفاوت قالب advanced و basic در yii framework 2

قالب advanced:

- دارای دو بخش frontend و backend در application میباشد که به عنوان مثال میتوان از backend برای پیاده سازی بخش مدیریت نرم افزار و frontend جهت قسمت کاربران استفاده کرد

- شامل مدل آماده User و قست هایی همچون ورود، بازگردانی کلمه عبور و ثبت نام است که با استفاده از آن میتوان توسعه قسمت کاربران application را به آسانی و با سرعت بیشتری انجام داد.

پس اگر در حال توسعه نرم افزاری هستین که شامل بخش های مدیریت و کاربران یا قسمت های بیشتری از این قبیل است از advanced استفاده کنید. و اگر تنها به frontend نیازمندید basic را پیشنهاد میکنم.

Hashids، تولید یک شناسه منحصر به فرد از اعداد صحیح (integers)

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

به عنوان مثال عددی مانند 347 تبدیل به رشته ی “yr8” خواهد شد، یا آرایه ای شامل اعداد مانند [27, 986] تبدیل به “3kTMd” میشود.

شما همچنین میتوانید شناسه ها را رمزگشایی کنید، یعنی رشته های تولید شده به وسیله ی این کتابخانه برگشت پذیر به حالت اولیه خود خواهند بود. حتی طول رشته تولید شده توسط شما قابل تعریف میباشد.

نمونه ای از خروجی این کتابخانه را در اینجا مشاهده کنید.

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

https://url.ir/lqY9X

بیشتر بخوانید

ساخت یک هکر خبر خوان با استفاده از کلاس readability!

موضوعی که اخیرا بسیار مورد توجه وبسایت های مختلف قرار گرفته جمع آوری محتوای سایت های دیگر و نمایش این اطلاعات داخل سایت خودشون هست.

به عنوان مثال سایتی با موضوع پرورش هویج! تصمیم داره از مراجع مختلف اطلاعاتی در این زمینه جمع آوری و داخل سایت خودش نمایش بده.

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

من تصمیم دارم RSS یک سایت رو به این کلاس معرفی و در انتها آخرین محتوای ارسال شده اون سایت رو دریافت کنم.

بیشتر بخوانید

معرفی و آموزش مزیت های مرورگر جدید ویوالدی - vivaldi

 این مرورگر اینترنتی یکی از جدید ترین در نوع خود و جز پرطرفدارترین محسوب می شود و در ویندوز مک و لینوکس ارائه شده است. کاربران می توانند در این مرورگر محیط مورد نظر خود را طراحی کنند.

بعد از یک سال کار برروی این نرم افزار اولین نسخه ان در ۱۸فروردین ۹۵ وارد بازار شد. شرکت سازنده این نرم افزار Vivaldi Technologies که توسط یان استفنسون فون تتسنر موسس سابق شرکت اپرا اداره می شود.

۰۵۱۲۲۱۲۳۳۵-review_893x714.jpg

 

بیشتر بخوانید

تست سریع و آسان Web API با استفاه از Postman

Postman

Postman یک افزونه گوگل کروم هست که با استفاده از اون میشه براحتی متد های یک Web API رو اجرا، تست یا بررسی کرد.

این ابزار به ما کمک میکنه تا به سرعت یک درخواست HTTP ایجاد و ارسال کنیم.

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

وبسایت افزونه

ویدئو های آموزشی

حل مشکل تایپ فارسی در phpstorm

phpstorm از نسخه 2016 به بعد زبان فارسی رو به خوبی پشتیبانی میکنه.
برای حل مشکل فارسی نویسی در نسخه های 9 به بالا (تا قبل از 2016)  مراحل زیرُ انجام بدین:

1- در محل نصب نرم افزار فایل idea.properties رو پیدا کنید
2- با یک ادیتور مثل notepad بازش کنید و خط زیرُ به انتهای فایل اضافه کنید:

editor.new.rendering=true

3- یک بار phpstrom رو ببندید و دوباره باز کنید.

ساخت یک RESTful Web Service با استفاده از slim 3

REST چیست؟ 
representational state transfer یا به طور خلاصه REST معماري است که مجموعه اي از اصولی را تعریف میکند تا به وسیله ي آن server و client بتوانند با هم ارتباط برقرار کنند. 
RESTful به سیستم هایی گفته میشود که داراي معماري کلی REST هستند. 
RESTful معمولا بر روي پرتکل HTTP و با استفاده از 4 عملیات پایه GET, PUT, POST, DELETE کار میکند.
علاوه بر این میتواند براي تعریف یک پیغام SOAP از WSDL بروي HTTP استفاده کند یا میتواند یک کلاس انتزاعی باشد که صرفاً بروي SOAP بنا شده باشد.
REST میتواند جایگزین مناسبی براي SOAP باشد، اما براي کار هاي ساده...
Slim چیست؟
Slim یک PHP micro framework هست که در نوشتن برنامه هاي کاربردي و در عین حال قدرتمند به ما کمک میکند.
Slim امکان دریافت یک درخواست HTTP، فراخوانی یکروال و ارسال پاسخ آن را به ما میدهد، فوق العاده سریع و داراي کد بسیار کمی هست در نتیجه ابزار مناسبی براي کار ما میباشد.

بیشتر بخوانید
عضویت در خبرنامه
جهت اطلاع از آخرین فعالیت های من لطفا در خبرنامه عضو شوید