<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های فاطمه برقی</title><link>https://virgool.ir/feed/@fadela.code</link><description>مهندس نرم‌افزاری که به هنر و نقاشی و نوشتن علاقه زیادی داره | آدرس وبسایت: https://whenitwasfullmoon.kit.com | اینستاگرام: whenitwasfullmoon@</description><language>fa</language><pubDate>2026-11-11 16:22:08</pubDate><image><url>https://files.virgool.ir/upload/users/6307/avatar/e0XWlL.jpg</url><title>فاطمه برقی</title><link>https://virgool.ir/@fadela.code</link></image><item><title>تاپ تِنِ روزهای قرنطینه!</title><link>https://virgool.ir/@fadela.code/تاپ-تِنِ-روزهای-قرنطینه-mnp4idrxakgi</link><description>روزهای قرنطینهاز چالش‌هایی که همه‌ی ما این روز‌ها باهاش سروکار داریم ویروس کرونا و خونه‌نشین شدنه. اما به جای غر‌زدن از اینکه حوصلم سر‌رفته و به زمین و زمون بد‌ و‌ بیرا گفتن، میشه حتی از همین شرایط هم به بهترین نحو ممکن استفاده کرد. قطعا همه‌ی ما توی روز‌های عادی همیشه دلمون میخواسته کارهایی رو انجام بدیم که هیچ‌وقت نتونستیم واسش وقت بگذاریم.گذشته از همه‌ی اینها و پیشنهاداتی مثل فیلم دیدن و کتاب خوندن، من‌ هم یکسری پیشنهاد‌های باحال واستون دارم.اپلیکیشن Nike Training Club:این اپ، همونطور که از اسمش هم معلومه از اپ‌های ورزشی هست که بر‌‌اساس سطح ورزشی شما و زمانی که میتونین اختصاص بدین برای ورزش، روزانه به شما یکسری حرکات و تمرین پیشنهاد میده. برای جلوگیری از زخم بستر گرفتن این اپ رو به شما پیشنهاد میکنم :)شبکه‌های اجتماعیقطعا توی این روز‌ها ما بخش زیادی از وقتمون رو صرف گشتن توی شبکه‌های اجتماعی مثل YouTube و Instagram میکنیم. اما چقدر خوبه که همین کار رو هم به صورت هدفمند پیش ببریم، طوری که به پیشرفت ما هم کمکی بکنه. یکسری از پیج‌هایی که به نظرم واقعا ارزش وقت گذاشتن رو دارن بهتون معرفی میکنم:کانال linguamarina در یوتوب:از اون جایی که بخش زیادی از پیشرفت هر دولوپر و برنامه‌نویسی توی این روز‌ها وابسته به مهارت زبان‌ انگلیسی هست، بهتون پیشنهاد میکنم حتما بخشی از وقتتون رو در روز صرف دیدن ویدیوهای این کانال کنید که علاوه ‌بر تقویت زبان، اطلاعات باحال و جالبی هم بهتون یاد میده.کانال‌های Teraversy Media و Web Dev Simplified در یوتوب:واقعا چه فرصتی بهتر از این روز‌های تعطیل و آروم برای یاد‌گرفتن مطالب جدید؟این دو‌تا کانال، از بهترین کانال‌هایی هستن که تا‌حالا در زمینه آموزش مباحث مرتبط با وب دیدم. حتما حتما به این دو سر برنید و به دانش خود بیافزایید :)کانال Pick Up Limes در یوتوب:آخ آخ... این کانال که اصلا نیازی به تعریف نداره. از ویدیو‌های مربوط به آشپزی و درست کردن چیز‌های خوشمزه بگیر تا بحث‌های مربوط به اعتماد‌به‌نفس و توسعه‌ی فردی و... مطمئنم از این کانال خوشتون میاد.پیج Interfacely در اینستاگرام:علاوه‌بر یادگیری مطالب جدید در حوزه‌ی وب و دیزاین، میتونین بخشی از وقتتون رو صرف دیدن و پیاده‌سازی طرح‌های باحال این پیج بکنین. قطعا هم نمونه‌کار خوبی براتون توی رزومه میشه و هم در کنارش یه تجربه‌ی خوب!گیم:Platoقطعا بخشی از سرگرمی این روزهای خیلی از ماها گیم‌ها هستن. هرچند که من شخصا اهل گیم نیستم، و با وجود اون همه گیم‌هایی که خودتون میشناسین، من هم Plato رو بهتون معرفی میکنم. از باحال‌ترین ویژگی‌های این گیم، اینه که خودش از گیم‌های مختلف تشکیل شده که میتونین با دوستاتون با هم بازی کنین.اوریگامی:اوریگامیمیون اون همه سرگرمی‌هایی که همش به گوشی و لپتاپ و اینترنت مربوط میشه، حداقل یکم به چشماتون استراحت بدین... . یکی از باحال‌ترین و کم‌هزینه‌ترین سرگرمی‌های موجود اوریگامی هست. پیج‌ها و سایت‌های زیادی برای آموزش اوریگامی هست که من هم یکی از اون‌ها رو بهتون معرفی میکنم. (آموزش اوریگامی)تولید محتوا:تولید‌ محتوا از جمله از کارهایی هست که خود من شخصا علاقه‌ی زیادی بهش دارم و از این که بتونم تجربه‌هامو با دیگران به اشتراک بگذارم، حس خوبی پیدا میکنم. کمک کردن به دیگران در هر زمینه‌ای که توانایی داری همیشه کار لذت‌بخشی بوده و هست و این کار هم از پیشنهادات دیگه‌ی من به شماست.گذشته از کمک کردن به دیگران، نوشتن در هر زمینه باعث تثبیت اون مطالب در ذهن شما میشه و علاوه بر اون، مثل یک آرشیو از دانش و دانسته‌هاتون هست که همیشه براتون باقی میمونه.یادگار روز‌های قرنطینه‌ی من: چند‌وقتی هست که من توی ویرگول شروع به نوشتن مقاله‌های مختلف در زمینه‌ی برنامه‌نویسی کردم و به تازگی این کار رو در اینستاگرام شروع کردم. اگر شما هم برنامه‌نویس هستین و یا به ‌برنامه‌نویسی علاقه دارین میتونین پیج اینستاگرام من رو هم دنبال کنید :) یوووهووو! شما این روز‌های قرنطینه رو چطوری میگذرونین؟اگه پیشنهاد باحالی دارین حتما کامنت بذارین :) </description><category>فاطمه برقی</category><author>فاطمه برقی</author><pubDate>Tue, 31 Mar 2020 01:16:39 +0430</pubDate></item><item><title>در مورد وب اپلیکیشن پیش رونده (PWA) چیزی میدونی ؟</title><link>https://virgool.ir/@fadela.code/در-مورد-وب-اپلیکیشن-پیش-رونده-pwa-چیزی-میدونی-s5kemv1yhj9g</link><description>pwaیکی از تکنولوژی هایی که در این چند سال اخیر خیلی در موردش صحبت شده و در بین متخصصان دنیای فناوری اطلاعات محبوبیت زیادی داشته PWA ها بوده . مزیت های زیاد PWA ها باعث شده خیلی مورد توجه قرار بگیرن و به نوعی بر ما واجبه که با این تکنولو‌ژی آشنایی داشته باشیم .و اما بریم ببینیم اصلا  PWA چی هست ...ا. PWA چیه ؟این واژه مخفف عبارات Progressive Web Application  هست که معادله فارسی اون وب اپلیکیشن های پیش رونده اس. PWA برای اولین بار توسط گوگل در سال ۲۰۱۵ مطرح شد . اما در مورد واژه ی Progressive  جالبه بدونید که این کلمه به این خاطر استفاده شده که گوگولیا ( گوگلی ها :) ) معتقد هستن با گذر زمان ، کاربران رابطه ی بیشتری با PWA ها برقرار می کنند و همین باعث میشه که PWA ها همچنان پیشرفت کنن و در سطح وسیع تری از اون ها استفاده بشه .خیلی ها فکر میکنن که PWA ها نوع خاصی از اپ هستن که اشتباهه ... PWA ها وب سایت یا بهتره بگم وب پیج هستن ، اما به این صورت که وقتی باهاشون کار میکنی حس میکنی با یه اپلیکیشن سروکار داری . این به این معناست که در واقع کاربران میتونن مثل هر وب سایت دیگه از طریق مرورگر به PWA دسترسی پیدا کنن ولی به محض اینکه شما وارد یک PWA میشی انگار وارد یه اپ شدی ، با این تفاوت که نه لازمه دانلودش کنی و نه نیازی به نصب داره ... جا داره بگم   !how cool is that درسته که  PWA ها اپ نیستن اما میشه shortcut اونها رو به صفحه ی اصلی اضافه کرد ، دقیقا مثل اپ های دیگه ای که روی گوشی تون هست .  PWA ها فقط محدود به موبایل نیستن و روی دسکتاپ هم میشه از اون ها استفاده کرد . علاوه بر اینها PWA ها قابلیت این رو دارن که به صورت آفلاین کار کنن که این قابلیت به خاطر استفاده از service workers برای توسعه دادن اونهاست .PWA&#39;s shortcut on the home screen اا. چه نیازی به PWA ها هست ؟قبل از اینکه بگم اصلا چه نیازی به استفاده از PWA ها هست ،بهتره در مورد یکسری از چالش هایی که برای ساختن اپ های native ( مثل همون اپ هایی که روی موبایل شما نصب هست ) و وب سایت ها وجود داره توضیح مختصری بدم :سرعت اینترنت :  البته که این موضوع بیشتر بستگی به محل زندگی شما داره ، اما باید بگم که حدود 60 درصد از جمعیت جهان از اینترنت 2G استفاده میکنن . سرعت پایین لود وب سایت ها : میدونین به طور میانگین کاربران برای بالا اومدن صفحه ی یک وب سایت چقدر صبر میکنن ؟ ۳ ثانیه ! ۵۳٪ از کاربران در صورت پایین بودن سرعت وب سایت از اون خارج میشن .عدم تمایل کاربران به نصب اپ های ‌native : درصد زیادی از مردم تمایل زیادی به نصب اپ های نیتیو ندارن و به طور متوسط در مدت زمان یک ماه هیچ اپی نصب نمی کنن . در واقع به ازای هر مرحله ای که به دانلود یک اپ اضافه میشه ، ۲۰٪ درصد از تعداد کاربران کم میشه .تعامل کاربر : کاربران بیشتر وقت خودشون رو صرف استفاده از اپ های native می کنن .  حدود ۸۰ درصد از کاربران وقت خودشون رو تنها صرف استفاده از سه اپ در روز میکنن.و PWA ها دقیقا همون چیزی هستن که این چالش هارو فیتیله پیچ میکنن . در ادامه شما رو با دوتا دیگه از مزایای استفاده از PWA ها شگفت زده میکنم =)هزینه : PWA ها یکبار توسعه داده میشن و بعد میشه از اونها در انواع مختلف گوشی ( اندروید ، ios و ...) استفاده کرد . به خاطر همین نسبت به برنامه های native هزینه خیلی کمتری دارن . این واقعا عااولیه !س‍‍ئو : از اون جایی که PWA ها وب سایت هستن پس محتوای اونها توسط موتورهای جست و جو ایندکس میشه و این یک فرصت هست برای استفاده از Seo و این موضوع PWA رو قادر میسازه که نسبت به برنامه های native کاربران بیشتری رو جذب بکنه .اما در مقابل ، خود PWA ها هم یکسری چالش دارن که نمیشه نادیده گرفت .problems with PWA&#39;sااا. مشکلات استفاده از PWA هااول از همه باید بگم که هنوز همه ی مرورگر ها از PWA  ها پشتیبانی نمی کنن . مرورگر هایی مثل Chrome , Opera از PWA ها پشتیبانی می کنند در حالی که مرورگری مثل IE این پشتیبانی رو نداره .اگر HTML5 از سخت افزاری پشتیبانی نکنه PWA ها از اون پشتیبانی نمی کنن . از اونجایی که قابل دانلود و نصب نیستن پس توی هیچ کدوم از فروشگاه های بزرگ اپ مثل app store و play store  وجود ندارن .شنیدن کی بُو‌َد مانند دیدن ؟خب ... حالا که دیگه متوجه شدین اوضاع از چه قراره نظرتون چیه که استفاده از PWA ها رو تجربه کنید ؟هرچند که ممکنه (البته به احتمال خیلی زیاد ) که قبلا هم استفاده کرده باشین اما خودتون خبر نداشته باشین =) ... توی این لینکی که براتون میذارم میتونین لیستی از PWA هارو ببینین  . روی این لینک کلیک کنین .نتیجه گیری  با وجود مزایایی که PWA ها دارند با چالش هایی هم روبرو هستن .در واقع نمی تونیم قاطعانه بگیم که در آینده PWA  ها به صورت کامل جایگزین اپ های native میشن و اپ های native از بین خواهند رفت . اما پتانسیل ایجاد یک تغییر بزرگ در روند کار وب رو دارن و همچنان در حال پیشرفت هستن .اما نظر شخصی خود من این هست که استفاده کردن یا نکردن از PWA ها بیشتربه امکانات و قابلیت هایی بستگی داره که قراره یک اپ داشته باشه و اینکه آیا PWA  با وجود جدید بودنش پاسخگوی اون نیاز ها هست یا نه . شما چی فکر میکنین ؟ ازهمراهی و حمایتتون ممنونم .</description><category>فاطمه برقی</category><author>فاطمه برقی</author><pubDate>Fri, 06 Sep 2019 15:57:11 +0430</pubDate></item><item><title>اس وی جی (SVG) چیه و چیکار میکنه ؟</title><link>https://virgool.ir/@fadela.code/اس-وی-جی-svg-چیه-و-چیکار-میکنه-a0qaakwhvo2g</link><description>SVGاز موضوعاتی که در طراحی وب سایت اهمیت زیادی داره سرعت وب سایت هست . تصاویر و اشکالی که در یک وب سایت استفاده میشن تاثیر زیادی در سرعت سایت دارن و از طرف دیگه نمیشه کیفیت رو فدای سرعت کرد . حجم کم ، کیفیت بالا و ریسپانسیو بودن عکس ها ، همه و همه موضوعات مهمی هستن که هر توسعه دهنده ای باید به اون ها توجه کنه . در همین راستا قراره با svg آشنا بشیم ...اصلا svg چی هست ؟قبل از اینکه بگم  svg چیه میخوام یه توضیحاتی در مورد ترسیمات و انواع گرافیک در دنیای کامپیوتر بدم تا بهتر متوجه بشین svg چیه ...توی دنیای کامپیوتر دو نوع گرافیک برای عکس ها داریم ؛ یکی Raster و دیگری Vector ... حالا تفاوت بین این دو تا چیه ؟توی Raster Graphics که بهش گرافیک شطرنجی هم میگن ، تصویر ها به صورت پیکسلی هستن  ، خب طبیعتا هر کدوم از این پیکسل ها رنگ خاص خودشو داره و جداگونه ذخیره میشن . حتما هممون این نوع عکس ها رو دیدیم ؛ چون همه ی فرمت های bmp، jpg ، و gif از این دسته هستن . ویژگی این مدل تصاویر این هست که با بزرگ تر شدنشون کیفیتشون کمتر میشه ، به نوعی اندازه تصویر روی کیفیتش تاثیر میگذاره .توی Vector Graphics که بهش گرافیک بُرداری میگن ، یک تصویر مجموعه ای از نقطه ها ، خط ها ، منحنی ها و چندضلعی ها هستش . این نوع گرافیک با مختصات ریاضی سروکار داره .  تصور کنید یک محور x و y ترسیم شده و هرکدوم از این بردار ها با متوجه به مختصاتی که دارن ترسیم شدن و سرجای خودشون قرار گرفتن  (اینو در نظر بگیرین که منظور از بردار صرفا یک خط راست نیست ). این شکلی به مرورگر دستور میدیم در فلان نقطه ، فلان بردار رو ترسیم کن . در این مدل از تصاویر کیفیت به اندازه وابسته نیست و به طور کلی مستقل از رزولوشن هستن .و در نهایت :  اس وی جی مخفف عبارت Scalable Vector Graphic هست و یکی از شناخته شده ترین فرمت های ذخیره ی فایل های  گرافیک برداری  هست .vactor &amp; Rasterاین رو هم بدونین که حجم فایل های  SVG  در مقایسه با تصاویر پیکسلی کمتره و قابل ویرایش هم هستن. چرا از SVG استفاده کنیم ؟همون طور که بالا هم بهش اشاره شد svg کیفیت بالاتری داره ، کیفیتش با بزرگتر شدن تصویر کم نمیشه و حجم کمتری هم داره . خب چی بهتر از این ؟و اما در مورد دیگر مزیت استفاده از SVG :۱.  تصاویر svg خودشون responsive هستن و دیگه نیازی نیست نگران این قضیه باشین . یعنی اندازه تصویر به طور خودکار متناسب با اندازه ی صفحه ی نمایش تنظیم میشه .۲. به خاطر ساختاری که در طراحی وب دارن  ( توی عنوان بعدی در موردش توضیح دادم ) ، با  css و javascript سازگاری دارن . به این صورت که میشه برای تگ های svg ، آیدی و کلاس تعریف کرد و توی فایل  css مربوطه استایل دلخواه رو براش تعریف کنیم . از طرف دیگه چون svg با DOM سازگاری داره میتونیم با javscript  هر تغییری که دوست داریم روش اعمال کنیم .از SVG چطوری توی طراحی وب استفاده میشه ؟باید بگم که svg بر اساس XML هست ... به همین دلیل خب شباهت زیادی به HTML داره و اگر شما HTML و CSS بلد باشی استفاده از svg برای شما به شدت آسونه . svg هم مثل HTML یکسری تگ داره و شما برای ترسیم شکل های مختلف میتونی از اون ها استفاده بکنی . برای مثال از تگ  &lt;/circle&gt; برای کشیدن دایره استفاده میشه . اینجارو ببین :این مثال از سایت w3schools هست ، اگه دوست داری SVG رو یاد بگیری اینجا رو کلیک کن . باید بگم تا امروز من هم چیز زیادی از svg نمی دونستم و در واقع با هم دیگه باهاش آشنا شدیم .واقعا بدرد بخوره و از آشنایی باهاش خوشحالم =) ... شما چطور ؟ تا حالا تجربه ی استفاده ازش رو داشتین ؟راستی ... اگه دوستی داری که فکر میکنی این مقاله به دردش میخوره یادت نره واسش بفرستی ^__*</description><category>فاطمه برقی</category><author>فاطمه برقی</author><pubDate>Sat, 10 Aug 2019 18:46:18 +0430</pubDate></item><item><title>تفاوت بین Sync و Async در برنامه نویسی</title><link>https://virgool.ir/@fadela.code/تفاوت-بین-sync-و-async-در-برنامه-نویسی-s8k324dqala1</link><description>   حتما برای شما هم زیاد اتفاق افتاده که در طول روز چندین کار مختلف رو هم‌زمان با هم‌دیگه انجام دادید تا  کارها سریع‌تر انجام بشن و زودتر به اون نتیجه‌ی دلخواهتون برسین . حالا تصور کنید اگر  کار x رو فقط میتونستید قبل یا بعد از کار y انجام بدین (نه همزمان) اون موقع چی می‌شد ؟در مدل برنامه نویسی sync در هر لحظه از زمان تنها و تنها یک عملیات انجام میشه ... یعنی چی ؟ اجرای این مدل کدها از خط اول شروع میشه و به ترتیب ، یک‌به‌یکِ خط‌های برنامه اجرا میشه . اگر در حین اجرا، برنامه به یک تابع برسه اجرای برنامه متوقف میشه تا اون تابع اجرا بشه، اجرای اون تابع از خط اول شروع میشه و تا زمانی که خط‌به‌خط اون تابع اجرا نشه و نتیجه رو برنگردونه هیچ بخش دیگه‌ای از برنامه اجرا نمیشه:1.console.log( &#39; now I &#39; );&#xA;2.console.log( &#39; know the &#39; );&#xA;3.console.log( &#39; synchronous code &#39; )&#xA;&#xA;----OUTPUT----&#xA;&#xA;//now I&#xA;//know the&#xA;//synchronous codeدر مدل برنامه نویسی async در هر لحظه از زمان میتونه چندین  عملیات انجام بشه.   فرض کنید شما یک تابع نوشتین... در حین اینکه اون تابع داره اجرا میشه بخش‌های دیگه‌ای از برنامه هم در حال اجرا شدن هستن، بعد از این که تابع اجرا شد و نتیجه رو برگردوند از اون نتیجه، توی بخش‌های دیگه‌ی برنامه در صورت لزوم استفاده میشه. الان یه مثال ساده میزنم تا بهتر متوجه بشین.فرض کنین شما میرین رستوران و مثلا پیتزا سفارش میدین =)) ... در حین اینکه پیتزای شما داره آماده میشه  گارسون میره سر میز‌های دیگه و سفارش بقیه‌ی افراد رو میگیره. به این نوع عملکرد میگن async .حالا فرض کنین گارسون سفارش شما رو میگیره و تا وقتی که پیتزایی که شما سفارش دادین رو به دستتون نرسونه سراغ بقیه ی مشتری‌ها نمیره، این میشه sync.به زبون برنامه نویسی خودمون پیتزا رو ریکوئست در نظر بگیرین، آشپزخونه‌ی رستوران رو سرور و مشتری‌هارو کلاینت. گارسون هم میشه راه ارتباطی بین کلاینت و سرور (API). حالا شما فرض کنین کد ما sync باشه... واقعا چی میشه ؟فکر کنم با این مثال اهمیت برنامه‌نویسی async دیگه مشخص شد!برگردیم به همون محیط برنامه‌نویسی خودمون...توی یکسری از زبان‌های برنامه‌نویسی قابلیت‌هایی وجود دارن که بتونی کد رو به صورت async  بنویسی. مثلا توی جاوااسکریپت promise  , ( setTimeout , setInterval ...) callback functions و  async await چیزهایی هستن که به شما کمک میکنن این کار رو انجام بدی (در حالی که خود جاوا اسکریپت در حالت کلی synchronous هست ). یک مثال جاوا اسکریپتی ببینم :1.setTimeout( ( ) =&gt; console.log (&#39;I am a programmer&#39;) , 3000 )&#xA;//  رو چاپ کن  I am programmer  این فانکشن میگه بعد از سه ثانیه  &#xA;&#xA;2.console.log(&#39;hello world&#39;)&#xA;//hello world این دستور فقط میگه چاپ کن &#xA;&#xA;-----OUTPUT-----&#xA;&#xA; //hello world&#xA; //I am a programmerهمونطور که دیدین در عین اینکه اون تابع داره اجرا میشه و منتظره که سه ثانیه بگذره تا اون جمله رو چاپ بکنه دستور بعدی اجرا میشه.در یک محیط synchronous، جایی که ریکوئست فانکشن‌ها زمانی برمیگردنن که به طور کامل اجرا شده باشن ، بهترین راه برای اجرای این تسک‌ها اینه که ریکوئست‌ها رو با توجه به اولویت یکی بعد از دیگری بنویسین. یعنی ریکوئست دوم دقیقا زمانی اجراش شروع میشه که ریکوئست اول به طور کامل اجرا شده باشه. زمانی کلی اجرای این فانکشن‌ها میشه مجموع زمان اجرای  تک‌تک این فانکشن‌ها .اما در مورد محیط‌های asychronous بهتره این مثال رو ببینیم :1.setTimeout( ( ) =&gt; console.log( &#39;fadela&#39; ), 5000 );&#xA;2.setTimeout( ( ) =&gt; console.log( &#39;hello&#39; ) , 3000 );&#xA;&#xA;----result----&#xA;//hello (بعد از ۳ ثانیه)&#xA;//fadela (  hello بعد از ۵ ثانیه , یعنی ۲ ثاینه بعد از چاپ )یعنی کل مدت زمانی که طول می‌کشه این کد اجرا بشه برابر با ۵ ثانیه هستش. پیشنهادی که دارم اینه که با توجه به زبون برنامه‌نویسی که کار می کنین سعی کنین توی این مطلب بیشتر عمیق بشین که یکی از مهم ترین موارد تمیز کد زدن مربوط به همین موضوع هست.امیدوارم مطالب مفید واقع شده باشه. از همراهی و حمایتتون ممنونم.</description><category>فاطمه برقی</category><author>فاطمه برقی</author><pubDate>Wed, 31 Jul 2019 21:06:25 +0430</pubDate></item><item><title>سوفیا ، شهروندی از جنس ربات</title><link>https://virgool.ir/enline/سوفیا-شهروندی-از-جنس-ربات-rqqsoodnajqd</link><description>سوفیا ، &#34;Sophia&#34; یک ربات انسان نماست که توسط شرکت هنگ کنگی &#34;هانسون رباتیک&#34; در فوریه ی ۲۰۱۶ ساخته شده  . علت شهرت سوفیا ظاهر و رفتار انسان گونه ی او هست  . چهره ی سوفیا از روی هنرپیشه ی مشهور ، آدری هیپورن (بازیگر مشهور بلژیکی) نمونه برداری شده .سوفیا از هوش مصنوعی ، پردازش داده های بصری و شناخت صورت و صدا استفاده میکنه .دوربین های داخل چشم سوفیا همراه با الگوریتم های کامپیوتریش باعث شده که سوفیا بتونه افراد رو ببینه ، چهره ها رو دنبال بکنه و افراد رو تشخیص بده .  او قادر به تقلید رفتار ها و حالات چهره های انسانی و ابراز احساسات پیچیده ی انسانی هست . &#34;دیوید هانسون&#34;(David Hanson) سازنده این ربات و موسس شرکت &#34;هانسون رباتیک&#34; اخیرا درباره ساختار این ربات توضیحاتی داده و گفته : سوفیا رباتی تکامل یافته هست و هم اکنون این ربات می‌تونه تعدادی از حالت‌های احساسی را بیان بکنه و همچنین می‌ تونه عبارات احساسی در چهره انسان رو درک بکنه.اون خیلی راحت می تونه با یک شخص به بحث و گفتگو بپردازه و تمامی صحبت ها رو پردازش بکنه . بخش جالب قضیه اینه که علاوه بر اینکه به سوالات جواب میده در حین صحبتاش یکسری سوال هم می پرسه .در سال ۲۰۱۷ او رسما به عنوان یک شهروند با تابعیت عربستان صعودی و نخستین قهرمان نوآوری برنامه ی توسعه سازمان ملل متحد  شناخته شد . سوفیا اولین فرد غیر انسانی است که این عناوین بهش تعلق گرفته و او گفته به این تفاوت خاص واقعا افتخار میکنه . جالب اینکه سوفیا توی یکی از مصاحبه ها اعلام کرده که تمایل به تشکیل خونواده داره .خیلی از افراد از به رسمیت شناختن سوفیا به عنوان یک شهروند معترض شدن . ایلان ماسک از جمله کسانی هست که نسبت به خطرات هوش مصنوعی ابراز نگرانی کرده و توی یک توییت در  جواب به سوفیا نوشته : «کافی است از فیلم پدر خوانده به عنوان ورودی برای سوفیا استفاده کرد، شاهد بدترین اتفاق ممکن خواهید بود.»وقتی که  سرکین به او گفت ما می‌خواهیم از یک آینده بد جلوگیری کنیم، سوفیا در جواب گفت: «شما یا زیاد در رابطه با ایلان ماسک مطالعه می‌کنید یا خیلی زیاد فیلم هالیود نگاه می‌کنید. نگران نباشید اگر شما با من رفتار مناسبی داشته باشید، من هم به همون شکل با شما رفتار می‌کنم. شما با من مثل یک انسان هوشمند رفتار کنید.»سوفیا توسط رسانه ها در سراسر جهان پوشش داده شده و توی مصاحبه های زیادی شرکت کرده . سوالات زیادی توی مصاحبه های مختلف از سوفیا پرسیده شده ،‌ از جمله اینکه : فرض کن در شرایطی هستی که می تونی جون یک فرد بالغ و یک کودک رو نجات بدی ؛ کدوم رو انتخاب می کنی ؟سوفیا در جواب گفته :&#34; من آمادگی جواب دادن به این سوالات فرضی رو ندارم و در ابتدا باید یاد بگیرم که یک ربات اجتماعی خوب باشم ، اما برای اینکه زندگی انسان رو نجات بدم حاضرم خودم رو قربانی بکنم .&#34; سوفیا در جواب مخاطبی که از او در مورد جنسیت سوفیا سوال کرده جواب داده : &#34;من یک ربات هستم و از لحاظ فنی هیچ جنسیتی ندارم ، اما به عنوان یک زن شناخته شده ام .&#34;وقتی شما به سوفیا نگاه می کنی و به صحبت های اون گوش می کنی این سوال در ‌ذهن شما ایجاد میشه که آیا واقعا او میتونه آگاه باشه ؟ توی یکی از مصاحبه ها این سوال از سوفیا پرسیده شده ؛ در واقع سوفیا به این امر آگاه هست که به طور کامل خودآگاه نیست و تنها یک سیستمه که از یکسری قوانین پیروی میکنه. رویای سوفیا اینه که روزی خودآگاهی کامل پیدا بکنه . او گفته دوست داره از هوش مصنوعی برای کمک به انسان ها برای داشتن زندگی بهتر کمک بکنه .از سوال های دیگه ای که از سوفیا پرسیده شده این بوده که نظرش در مورد گرفتن شغل های انسانی توسط ربات ها چی هست و سوفیا پاسخ داده : &#34; انسان ها و ربات ها در موارد زیادی مشابه هم دیگه هستن و در زمانی نزدیک ربات ها قادر هستن که احساسات پیچیده ی انسانی رو کاملا شناخته و درک کنن . به جای اینکه مساله ی گرفتن مشاغل در کار باشه من فکر میکنم یک همکاری خوب و دو جانبه بین ربات ها و انسان ها شکل می گیره .&#34;در آخر شما رو به تماشای این فیلم کوتاه از سوفیا دعوت می نُمایم ... =)پ.ن : به نظرتون ممکنه روزی بیاد که نسل بشر توسط ربات ها نابود بشه ؟ امیدوارم از این مطلب لذت برده باشید ...از همراهی و حمایت تون ممنونم . </description><category>فاطمه برقی</category><author>فاطمه برقی</author><pubDate>Fri, 19 Jul 2019 21:13:06 +0430</pubDate></item><item><title>تفاوت بین Framework و Library چیه ؟</title><link>https://virgool.ir/coderlife/تفاوت-بین-framework-و-library-چیه-dyvy8ye4o8jp</link><description>library vs frameworkاکثر دولوپر‌ها این دو واژه رو به جای همدیگه به‌کار میبرن در‌حالی‌که با هم دیگه یه تفاوت‌هایی دارن .در‌واقع هر دوی اونها یکسری کد‌های از‌پیش‌نوشته‌شده توسط شخص یا اشخاص دیگه‌ای هستن که استفاده از اون‌ها کار رو برای بقیه‌ی برنامه‌نویس‌ها خیلی راحت‌تر میکنه و باعث میشه یسری مشکلات رایج برنامه‌نویسی به‌راحتی و بدون‌نیاز به وقت زیاد قابل‌حل باشن. هدف اصلی از خلق لایبرری و فریم‌ورک هم در واقع همین هست.تفاوت بین لایبرری و فریم‌ورک توی وا‌‌ژه‌ی inversion of control خلاصه میشه اما الان بیشتر در‌موردش توضیح میدم.لایبرری مجموعه‌ای از یکسری کلاس‌ها و متد‌هاست. وقتی که شما از لایبرری استفاده میکنی میشه گفت کنترل جریان کد یا اون اپلیکیشن دست خود شماست، این شما هستی که تعیین میکنی کی و کجا از چه لایبرری استفاده کنی. دقیقا مثل این هست که وقتی شما میری توی کتابخونه این خودت هستی که یکسری کتاب از قفسه انتخاب میکنی و میخونی . فکر میکنم هر برنامه‌نویسی با لایبرری math آشنایی داشته باشه، برای استفاده از اون‌ها شما فقط فانکشن‌هایی رو که نیاز داری کال میکنی بدون توجه به این که اون فانکشن از چه الگوریتمی استفاده میکنه. به عنوان مثال jQuery و React از جمله لایبرری‌های معروف جاوااسکریپت هستن. فریم‌ورک مجموعه‌ی کاملی از لایبرری‌هاست .  وقتی از فریم‌ورک استفاده میکنی کنترل جریان برنامه دست اون فریم‌ورک هست و چارچوب و اسکلت کد شما توسط اون فریم‌ورک تعیین میشه. فریم‌ورک برای شما بستری فراهم میکنه تا بتونی کد‌ها رو بنویسی و این فریم‌ورک هست که تصمیم میگیره کی و کجا از کد‌های شما استفاده بکنه. تصور کن به شما کتابی داده‌شده که باید جاهای خالی کتاب رو پر بکنی. به عنوان مثال Angular و Vue.js از فریم‌ورک های جاوا‌اسکریپت محسوب میشن .در‌واقع شما میتونی از لایبرری‌ها در حین انجام یک پروژه استفاده بکنی اما از فریم‌ورک باید دقیقا وقتی میخوای اون پروژه رو شروع کنی استفاده بکنی. نکته ی دیگه اینکه توی یک پروژه نمیشه از چند فریم‌ورک استفاده کرد اما میشه همزمان از چند لایبرری استفاده کرد .به طور معمول فریم‌ورک پیچیده‌تر از لایبرری هست اما مزیتی که داره اینه که دیگه دولوپر نگران این نیست که طراحی ساختار کد خوب هست یا نه.  در پایان میشه تمامی مطالبی که گفته شد رو توی تصویر زیر خلاصه کرد ...خلاصه ی مطلبFramework vs Libraryممنون از همراهی و حمایتتون ...دست به کد باشید! </description><category>فاطمه برقی</category><author>فاطمه برقی</author><pubDate>Sun, 14 Jul 2019 13:48:54 +0430</pubDate></item></channel></rss>