واحد مشترک کمکی پژوهش و مهندسی «هوش یار-تواندار»     (HT-CSURE)

واحد مشترک کمکی پژوهش و مهندسی «هوش یار-تواندار» (HT-CSURE)

Hooshyar-Tavandar Common Subsidiary Unit for Research & Engineering
واحد مشترک کمکی پژوهش و مهندسی «هوش یار-تواندار»     (HT-CSURE)

واحد مشترک کمکی پژوهش و مهندسی «هوش یار-تواندار» (HT-CSURE)

Hooshyar-Tavandar Common Subsidiary Unit for Research & Engineering

8 دلیل انتخاب فریم ورک CodeIgniter در برنامه نویسی PHP

  8  دلیل انتخاب فریم ورک CodeIgniter در برنامه نویسی PHP


8دلیل انتخاب فریم ورک CodeIgniter در برنامه نویسی PHP

فریم ورک چیست؟

فریمورکها در محیط های برنامه نویسی مختلف، شامل چارچوبی نرم افزاری است که به برنامه های نوشته شده نظم می بخشد. فریم ورک به طور کلی به مجموعه ای نسبتا کامل از کلاس ها (Class) گفته می شود که امکان افزایش سرعت کار را در روند برنامه نویسی فراهم و در عین حال انعطاف پذیری پروژه جهت توسعه و بروزرسانی های بعدی را افزایش می دهند.

در محیط برنامه نویسی PHP فریمورکهای زیادی وجود دارند از جمله : Laravel, Zend, CakePHP, Symfony, Yii, Phalcon و CodeIgniter

طی این مقاله نگاهی کوتاه به فریمورک CodeIgniter خواهیم داشت. قبل از شروع بحث نیاز است به این دو مفهوم اشاره کنیم:

 

مفهوم شی گرایی

در روند برنامه نویسی یک پروژه، بسیاری از عملیات و پردازش ها مشابه و تکراری هستند. برای مثال کنترل مقادیر وارد شده در فرم های متعدد و یا فراخوانی داده ها از دیتابیس را در نظر بگیرید. برای این پروسه های مشابه و تکراری می توان تنها از یک تکه کد (یک Class) بهره برد و به این ترتیب از هزینه های تولید، تا پشتیبانی و توسعه کاسته خواهد شد.

برنامه نویسی شی گرا (Object Oriented) یک راهکار یا الگوی برنامه نویسی، با هدف حذف کدهای تکراری (تا حد امکان)، در جهت افزایش قابلیت اعتماد و کاهش هزینه های تولید و نگهداری می باشد. در این الگو، مجموعه ای از صفات (attributes) و عملیات (operations) اشیا را تشکیل می دهند و می توان از این اشیا به طور مکرر در پروژه بهره برد و از پیچیدگی های تکراری داخل پروژه اجتناب کرد. هر کلاس شامل مجموعه ای از اشیا می شود که صفات و عملیات مشابهی دارند.

 

معماری Mvc

MVC که به فارسی می شود مدل-نما-کنترلگر یک معماری در برنامه نویسی است و به زبان ساده یعنی جدا کردن پوسته، از هسته پروژه. در معماری MVC پروژه به سه بخش اساسی مدل ها، نماها و کنترل گر ها تقسیم و سازماندهی می شود.

برنامه نویسی وب مفهوم MVC در PHP فریمورک CodeIgniter

مدل ها در واقع شامل هسته سخت پروژه هستند و با دیتابیس ارتباط و پردازش های مرتبط را انجام می دهند.

نماها پردازش ها برای ارائه پوسته بیرونی را انجام و نتایج پردازش های بک اند (مدل ها و کنترلگر ها) را در قالب رابط کاربری ارائه می دهند.

کنترل کننده ها هم بخشی از بک اند پروژه هستند که مسئول ارتباط نماها با مدل ها می باشند. کنترل گر ها شامل پردازش های منطقی می شوند.

بعنوان مثال : 1. کاربر در صفحه ورود به سایت فرم را تکمیل و ارسال می کند. 2. کنترل کننده لاگین فراخوانی می شود 3. کنترلگر از مدل لاگین وضعیت کاربر را فراخوانی می کند 4. اطلاعات ورود در مدل لاگین تایید (یا رد) می شود 5. نمای خوش آمد برای نمایش به کاربر فراخوانی می شود. 6. نمای فراخوانی شده برای نمایش به کاربر، چاپ می شود.

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

 

CodeIgniter  چیست؟

کدایگنایتر (به اختصار: CI) یکی از فریم ورک هایی است که برای زبان PHP ارائه شده و هدف اصلی آن حداکثر افزایش در سرعت برنامه نویسی نسبت به زمانی که پروژه را از پایه کدنویسی کنید، عنوان شده است. این فریمورک مجموعه ای از کتابخانه های ضروری و پرمصرف را فراهم کرده و براساس معماری MVC طراحی شده است. به ادعای توسعه دهندگانش با به حداقل رساندن کدهای مورد نیاز برای هر وظیفه، به برنامه نویس زمان بیشتری برای تمرکز بر جنبه های خلاقانه پروژه را می دهد.

 

ویژگی های فریمورک CI

1. حجم خیلی کم (حدود 3 مگابایت) و سرعت پردازش بالایی دارد.

2. نصب و راه اندازی آسان (کافیست آپلود و Extract کنید)

3. با هاست عادی و سرورهای اشتراکی و در نسخه های مختلف PHP قابل استفاده است.

4. تنظیمات اولیه خیلی کمی (تقریبا هیچ) نیاز دارد.

5. فریمورکی ساده است که زمان یادگیری و استفاده از آن برای برنامه نویس های آشنا با PHP بسیار کم (در حد چند روز) است.

6. نیازی به استفاده از Command Line ندارد.

7. از بانکهای اطلاعاتی زیادی پشتیبانی می کند.

8. راهنماها و مستندات کاملی برای استفاده از این فریم ورک موجود است.

 

اگر بعنوان برنامه نویس PHP تنها کار می کنید و یا یکی دو نفر همکار دارید، اگر به دنبال فریمورکی هستید که زمان زیادی برای یادگیری نخواهد، اگر علاقمند به فریمورکی با حجم کم و سرعت پردازش خوبید، اگر دوست دارید یا نیاز است پروژه تان دارای معماری MVC باشد، فریم ورک CodeIgniter برای شما ساخته شده است.

مایندمید بعنوان مشاور 24 ساعته کسب و کار آنلاین شما، در مراحل مختلف از آشنایی و یادگیری برنامه نویسی، اجرای ایده ها و توسعه پروژه های تحت وب بر پایه فریم ورک CI همراه شماست. هم اکنون می توانید تماس بگیرید.




 

نقش فضای مجازی در جنگ‌های آینده

پول‌نیوز - بحث جاسوسی سایبری مربوط به جنگ سایبری ولی از آن مجزاست؛ جایی که هکرها به منظور سرقت اطلاعات، اموال و دارایی‌ها به شبکه‌ها و سیستم‌های رایانه‌ای نفوذ می‌کنند.

نقش فضای مجازی در جنگ‌های آیندهمی‌توان مثال‌های فراوانی از موضوع جاسوسی سایبری در سال‌های اخیر ارائه داد. برای مثال نفوذ در سازمان ثبت احوال کشور آمریکا که در آن سوابق ۲۱ میلیون نفر شهروند آمریکایی به سرقت رفت و شامل ۵ میلیون سوابق انگشت‌نگاری شهروندان نیز بود، گفته می‌شود ممکن است این حمله را هکرهای چینی که مورد حمایت دولت چین هستند انجام داده باشند.

اما شاید یکی از معروف‌ترین این حملات، حمله به انتخابات ریاست جمهوری آمریکا در سال ۲۰۱۶ و سرقت ایمیل‌های حزب دموکرات باشد. در گزارش وب‌سایت پلیس فتا آمده که سرویس جاسوسی آمریکا اعلام کرده کشور روسیه پشت این حملات بوده است. هدف جاسوسی-سایبری سرقت است و نه ایجاد خسارت ولی نباید نادیده گرفت که چنین حملاتی می‌توانند تاثیر به‌سزایی در خسارت داشته باشند. برای مثال حقوقدانان در حال بررسی هستند که آیا هک و نفوذ برDNC  و افشای بعدی ایمیل‌ها تحت قوانین بین‌المللی غیرقانونی است یا خیر؟

بعضی‌ها معتقدند که این امر دخالت در امور سایر کشورهاست بنابراین یک واکنش در خور و شایسته مثل نفوذ متقابل، پاسخ این امر خواهد بود. برخی دیگر نیز معتقدند که این امر نیازی به پاسخ ندارد و همان‌طور که مشخص است مرز بین جنگ سایبری و جاسوسی-سایبری گنگ و نامفهوم است.

مطمئنا رفتار لازم در برابر نفوذ درون شبکه‌ها و یا جست‌وجو در نرم‌افزارهای آن شبکه یکی و مشابه خواهد بود ولی نتایج این دو عمل متفاوت است. برای اشخاصی که قصد دفاع دارند درک این موضوع که فرق بین دشمنی که در جست‌وجوی برنامه‌های جاری یک شبکه است یا به دنبال یافتن برنامه‌های مخفی و سری، دشوار است.

رئیس سازمانNSA  در یک بازجویی مقابل سنای آمریکا گفته که نفوذ در ساختارهای حیاتی آمریکا از نقطه نظر وقوع چنین حملاتی می‌تواند این‌طور به نظر برسد که آمادگی لازم در برابر حملات آینده که قصد ضربه زدن به آمریکا یا حداقل بازدارندگی آمریکا و سایر کشورها از محافظت و دفاع منافع حساس و مهم را دارند باید کسب شود.

جنگ سایبری و جنگ اطلاعاتی

مفهوم جنگ اطلاعاتی به طور قریب به جنگ سایبری مربوط می‌شود. این ارتباط بدین‌گونه است که در آن از نفوذ اطلاعات و تبلیغات به منظور نفوذ به اطلاعات اشخاص دیگر مانند شهروندان سایر کشورها استفاده می‌شود. در این نفوذ اطلاعاتی ممکن است از مدارک و اسنادی که توسط هکرها سرقت شده و بعدها منتشر شده استفاده شود. شاید هم شاهد استفاده از شبکه‌های اجتماعی به منظور پخش خبرهای دروغین باشیم.

غربی‌ها، جنگ سایبری و جنگ سرقت اطلاعات را دو مقوله‌ی جدا از هم می‌دانند، در حالی‌که بعضی تحلیلگران بر این باورند که تئوری‌های نظامی‌گری کشورهای چین و روسیه این دو مقوله را مرتبط با هم می‌خوانند. قطعا این احتمال وجود خواهد داشت که راهبرد نظامی غرب در حال برنامه‌ریزی در جهت یک جنگ سایبری غلط و اشتباه است.

احتمال وقوع جنگ سایبری محض خیلی دور از ذهن است و این مفهوم قبلا مثل سایر تکنولوژی‌ها مانند زیردریایی‌ها و هواپیماهای جنگنده در برنامه‌های نظامی وسیع گنجانده شده است. این به معنای عدم ارتباط این دو مقوله نیست بلکه به مفهوم این‌ است که تنها برخی از انواع قابلیت‌های سایبری ممکن است در درگیری‌های نظامی به کار گرفته شوند. یقینا تسلیحات سایبری ممکن است به یک خصوصیت کم‌تنش تبدیل شود زیرا این تسلیحات قابلیت ایجاد گنگی و هرج و مرج دارند نه خسارت.

اما ایده‌ی جنگ محض کشورها با تسلیحات سایبری، دور از ذهن خواهد بود و دلیل آن هم این است که ساخت تسلیحات سایبری سخت و هزینه آن گزاف است و تنها می‌تواند اهداف محدودی را مورد حمله قرار دهد و تنها بر کشورها و دشمنانی تاثیرگذار است که سیستم‌های نسبتا پیشرفته‌ای در زمان اولیه حمله داشته باشند.
منبع: ایسنا

آشتی مایکروسافت و لینوکس با عرضه SQL سرور نسخه 2017

رایورز - به‌تازگی شرکت مایکروسافت SQL سرور نسخه ۲۰۱۷ خود را به‌ صورت رسمی عرضه کرده است؛ ضمن اینکه این سیستم، مدیریت پایگاه داده‌ها با قابلیت اجرا بر روی سیستم‌های لینوکسی را به‌عنوان کاندیدای نخست این غول آمریکایی در خود جای داده است.

به گزارش وب‌سایت خبری تحلیلی theregister، سیستم مدیریت پایگاه داده‌های SQL سرور یکی از محبوب‌ترین گزینه‌های موجود جهان در این زمینه است که بسیاری از کاربران و برنامه‌نویسان از آن استفاده می‌کنند.

به‌تازگی مایکروسافت SQL سرور نسخه ۲۰۱۷ این سامانه را عرضه کرده است که این نسخه از این سامانه مدیریت پایگاه داده‌ها قرار است، با همان قدرتی بر روی دستگاه‌های لینوکسی عرضه شود که بر روی سایر سیستم‌های عامل بزرگ جهان ارائه شده است.

مایکروسافت در بیانیه‌ رسمی خود ضمن تائید این موضوع اعلام کرده است که کاربران لینوکس می‌توانند در استفاده از SQL سرور نسخه ۲۰۱۷ از مزایایی مشابه با کاربران ویندوزی بهره‌مند باشند و بدین ترتیب دیگر از محدودیت‌های پیشین خبری نخواهد بود.

بیانیه مایکروسافت در زمینه عرضه SQL سرور نسخه ۲۰۱۷ برای لینوکس به این شرح است:

«SQL سرور نسخه ۲۰۱۷ برای لینوکس، در دسترس بودن راهکارهای مختلف را در سطحی مشابه با ویندوز سرور به همراه خواهد داشت. این امر شامل گروه‌های همیشه فعال جاسازی شده و سازگار شده با خوشه‌های راهکاری بومی لینوکس مانند Pacemaker نیز خواهد بود.»

 

 

از دیگر مزایای موجود در SQL سرور نسخه ۲۰۱۷ برای لینوکس می‌توان به وجود تائید هویت به روش Active Directory اشاره کرد که موجب می‌شود تا کاربران ویندوز یا لینوکس بتوانند از اعتبار دامنه‌ای خود برای ورود و لاگین شدن به SQL سرور استفاده کنند.

هوش مصنوعی و انتقال مراکز تماس به سطح بعدی

رایورز - استفاده از راه‌حل‌های هوش مصنوعی برای تشخیص تمایلات کاربر می‌تواند به نتایج مثبتی مانند خدمات بهتر، درآمد بیشتر و وفاداری بیشتر به برند منتهی شود.

زمانی که شرکت‌ها میزان رضایت مشتری را با عملکرد خدمات خود می‌سنجند، به عواملی نظیر مدت زمانی که مسئول مرکز تماس در تلفن یا چت با مشتری می‌گذراند، توجه می‌کنند و نتایج نظرسنجی از مشتریان را در نظر می‌گیرند؛ اما در عین حال، در این بین، به میزان اقدامات واقعی صورت گرفته از جانب مشتری برای تماس یا احساس واقعی مشتری بی‌توجه هستند که در جای خود، موضوع حائز اهمیتی است.

به گزارش تک پرو ریسرچ، دکتر اسکایلر پلیس، معاون بخش علوم رفتاری در کوگیتو که نرم‌افزار هوش هیجانی زمان واقعی را ارائه می‌دهد، در این خصوص اذعان داشته است: «اگر با یک شماره با شرکتی تماس بگیرید، یا اگر به خاطر مشکلات زبانی، در درک صحبت نماینده به مشکل بربخورید، به شما کمکی نمی‌کند و مجبور هستید که هر بار نام و شماره حساب خود را تکرار کنید و به یک نماینده خدمات مشتری دیگر متصل شوید.»

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

یکی از نمونه‌های این کمک در مواردی است که به نظر می‌رسد میزان ناامیدی مشتری بالا می‌رود و به همین میزان، صدای خود را بالا می‌برند یا زمانی که توقف طولانی در مکالمه اتفاق می‌افتد که می‌تواند بیانگر افزایش عصبانیت باشد.

به نظر می‌رسد این نقطه، دقیقاً جایگاه‌ حساسی داشته که هوش مصنوعی باید برای آن راه حلی یافته و این مشکل روتین را مرتفع نماید.

 

 

از آنجا که به هوش مصنوعی آموزش داده شده است که به صورت چندزبانی و فرهنگی کار کند، می‌توان این سیستم‌ها را در کشورهایی که سبک‌های مختلف زبانی و فرهنگی دارند به کار بست. البته لازم به ذکر است که سبک‌های مذکور می‌تواند بر رضایت یا خشم مشتری اثرگذار باشد.

اگر مسئول خدمات مشتری بوده و در حال صحبت با مشتری باشید، هوش مصنوعی، قصد دارد پیام‌های مربوط به شما را روی صفحه نمایش، نشان دهد. از جمله این پیام‌ها می‌توان به «بیش از حد صحبت کرده‌اید»، اشاره نمود. این امکان وجود دارد که این پیام‌ها برای مقاصد آموزشی، به طور همزمان برای سرپرست نیز ارسال گردد.

ابزارهای متن باز لینکدین برای مدیریت قطعی سایت

رایورز - سازمان مهندسی لینکدین، مجموعه‌ای از ابزارهای کلیدی تحت عنوان پروژه‌های متن باز را برای کمک به کسب‌وکارها طراحی نموده است که در مواقعی به کار می‌روند که برنامه‌های آنها با مشکل مواجه ‌شود.

ابزارهای متن بازی که به تازگی توسط لینکدین طراحی شده است، به شرکت‌ها و سازمان‌ها کمک می‌کنند که به صورت خودکار با مهندسان ارتباط برقرار کنند و مسائل و مشکلاتی که در برنامه‌هایشان به وجود می‌آید را با آنها در میان بگذارند و تا حد امکان برای رفع آنها بکوشند. به نظر می‌رسد این ابزارها، تمایل زیادی در سازمان‌ها برای استفاده از این شبکه ایجاد نماید.

"آیریس" که نام آن از الهه یونان گرفته شده است، کاربران را از هشدارهایی که توسط سیستم‌های شرکت ایجاد می‌شود، مطلع می‌کند. برای مثال در صورتی که سرور تولید با مشکل مواجه شود، می‌تواند با مهندسان تماس بگیرد و قابلیت اطمینان سایت را با آنها در میان بگذارد.

به گزارش ونچربیت، با استفاده از این ابزارها، در صورتی که کاربران به اعلان اول پاسخ ندهند، آیریس پیام‌های بعدی را ارسال می‌نماید تا بالاخره پاسخی دریافت کند. ارتباط سیستم با مهندسان از طریق سیستم آنکال صورت می‌گیرد که پروژه‌ای است که اخیراً انتشار یافته است.

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

از دید کارشناسان، مقصود لینکدین از طراحی این پروژه‌ها این است که خودکارسازیِ فرآیندِ اعلان کردن به مهندسان برای قطعی سیستم و سایت، تسهیل گردد.

 

 

لینکدین، آیریس و آنکال را به عنوان بخشی از برنامه خود برای خودکارسازی روزافزون اعلان‌ها ایجاد کرده است. مهندسان مرکز عملیات شبکه لینکدین پیش از پیاده‌سازی این سیستم، مشکلات به وجود آمده را به صورت دستی به مهندسان اعلام می‌نمودند.

با همت و کوشش مهندسان در ساخت و ارائه این سیستم، استقرار سیستم مورد بحث در یک شرکت، به صورت کاملاً آسان و سریع صورت می‌گیرد. به محض پیاده‌سازی آریس و آنکال در یک شرکت، کاربران باید اطلاعات مهندسان را در سیستم وارد نمایند. لینکدین به منظور احراز هویت مهندسان از سیستم LDAP استفاده می‌کند که البته سیستمی مناسب محسوب می‌شود.