تازه های فناوری

Displaying items by tag: فناوری

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

آخرین برآوردهای جدید نشان می‌دهد که گوگل برای آنکه بتواند در سال جاری میلادی، کماکان موتور جستجویپیش‌فرض اپل در سافاری باشد، باید مبلغی بیش از ۹ میلیارد دلار پرداخت‌شده تا این زمان هزینه کند. این رقم احتمالا در سال ۲۰۱۹ افزایش خواهد یافت.

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

از آنجایی که گوگل، بیشتر درآمد خود را از طریق تبلیغات به‌دست می‌آورد، Safari در محصولات Apple از جملهآیپد و آیفون، اهمیت بسیاری زیادی برای گوگل دارد. از سوی دیگر، سافاری از موتورهای جستجوی بینگ، یاهویا DuckDuckGo برای جستجو پشتیبانی می‌‌کند. ولی بیشتر کاربران تمایل دارند با موتور جستجوی پیش‌فرض کار کنند و معمولا از موتور جستجوی پیش‌فرض در دستگاه خود استفاده می‌کنند. این برآوردها در حالی مطرح می‌شود که حضور گوگل به‌عنوان موتور جستجوی پشتیبان در سافاری، برای اپل یک مزیت محسوب می‌شود. با وجود محبوبیت Apple Music، پیشتر اپل به کمیسیون اوراق بهادار و بورس ایالات متحده گفته بود که هزینه‌های گواهی که از شرکت‌هایی همچون گوگل دریافت می‌کند، باعث رشد و توسعه‌ی اپل شده است. 

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

Published in فناوری

شیائومی به‌تازگی از طریق صفحه‌ی فیسبوکش، از گوشی جدید ردمی نوت ۶ پرو با چهار دوربین و نمایشگر ۶.۲۶ اینچی رونمایی کرده است.

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

نمایشگر ۶.۲۶ اینچ IPS LCD شیائومی ردمی نوت ۶ پرو، در قسمت بالا دارای ناچ است و می‌تواند وضوح تصویر ۱۰۸۰ در ۲۲۸۰ پیکسل را به‌نمایش بگذارد؛ به‌علاوه، نمایشگر این گوشی دارای نسبت تصویر ۱۹ به ۹ است، روشنایی آن به ۵۰۰ نیت می‌رسد و توسط گوریلا گلس 2.5D محافظت می‌شود.

گوشی جدید شیائومی همچون ردمی نوت ۵ پرو، به پردازنده‌ی اسنپدراگون ۶۳۶ تجهیز شده است و از ۴ گیگابایت رم در کنار ۶۴ گیگابایت حافظه‌ی داخلی بهره می‌برد. این امکان وجود دارد که در آینده‌ای نزدیک، مدل‌های جدید این گوشی با رم و حافظه‌ی داخلی بیشتر رونمایی شوند.

ردمی نوت 6 پرو شیائومی / Xiaomi Redmi Note 6 Pro

 

Xiaomi Redmi Note 6 Pro نخستین گوشی شیائومی است که به چهار دوربین تجهیز شده است؛ البته منظور، دوربین اصلی چهارگانه نیست. در قسمت پشتی این گوشی، شاهد دو دوربین ۱۲ و ۵ مگاپیکسلی هستیم که اولی، دوربین اصلی است و دومی، دوربین ثانویه به‌شمار می‌آید و برای تشخیص عمق به‌کار می‌رود. در قسمت جلویی این دستگاه، دوربین دوگانه با سنسورهای ۲۰ و ۲ مگاپیکسلی قرار داده شده است. 

ردمی نوت 6 پرو شیائومی / Xiaomi Redmi Note 6 Pro

 

شیائومی گفته است که دوربین‌های به‌کاررفته در ردمی نوت ۶ پرو، به ویژگی‌های جدیدی نظیر AI Dynamic Bokeh ،AI Portrait 2.0 ،AI Dual Front Camera و تشخیص صحنه به کمک AI مجهیز شده‌اند که همگی مبتنی بر هوش مصنوعی هستند. گفتنی است که دوربین‌های این گوشی می‌توانند به‌لطف بهره‌گیری از «تشخیص صحنه به کمک AI» از بین ۲۰۶ صحنه‌ی مختلف که در ۲۷ دسته قرار گرفته‌اند، بهترین صحنه را انتخاب کند تا بسته به شرایط مختلف، شاهد تنظیمات به‌خصوصی برای دوربین به‌منظور ثبت تصاویر بهتر باشیم.

ردمی نوت 6 پرو شیائومی / Xiaomi Redmi Note 6 Pro

 

ردمی نوت ۶ پرو در کنار همه‌ی این‌ها، به باتری ۴٬۰۰۰ میلی‌آمپرساعتی مجهز شده است و از سیستم‌عامل اندروید ۸.۱ اوریو بهره می‌برد. Xiaomi مدعی شده است که کاربران می‌توانند با یک‌بار شارژ‌ این گوشی، به‌طور مداوم تا ۶ ساعت به انجام بازی روی آن بپردازند یا ۸.۵ ساعت فیلم تماشا کنند. این گوشی جدید که دارای نسبت نمایشگر به بدنه‌ی ۸۶ درصد است، در سه‌رنگ مشکی، آبی و رز گلد و با قیمت ۲۱۵ دلار روانه‌ی بازار خواهد شد. به خریداران این گوشی در تایلند به‌صورت رایگان، دسبتند سلامتی می بند ۲ هدیه داده می‌شود.

Published in فناوری

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

بین غول‌­های بزرگ ساخت گوشی موبایل در دنیا، رقابت عجیبی بر سر تولید گوشی‌­های هوشمندتر، سریع‌­تر و ظریف‌­تر شکل گرفته که این موضوع به‌­مرور زمان تلفن‌­های همراه را به گجت‌­های با ارزش­‌تری تبدیل کرده‌ است. گوشی­‌های موبایل هر­روز گران‌­تر می­‌شوند و ما هم اطلاعات با ارزش بیشتری را در آن­ها ذخیره می‌­کنیم. طبق آمار، ۴۵% از کسانی که گوشی هوشمند خریداری می­‌کنند در هفته‌­های اول استفاده آن را روی زمین می‌­اندازند و گوشی آن­ها دچار خط‌­و­خش و آسیب‌­­های جدی می‌­شود. به همین دلیل اهمیت خرید انواع محافظ گوشی مانند قاب گوشی و کاور موبایل بیش از پیش ضروری شده است.

هزاران مدل از انواع گارد گوشی و کاور موبایل در سراسر دنیا وجود دارد که شاید بیشترین تنوع را در حوزه لوازم جانبی موبایل ایجاد می­‌کنند. اما برای خرید قاب مناسب برای موبایل به چه نکاتی باید توجه‌کنیم و اساسا علت اصلی خرید قاب گوشی چیست؟

نشت آپ

علت اصلی خرید قاب گوشی محافظت از گوشی است

انواع گارد گوشی و کاور موبایل با قیمت­‌های متفاوتی در بازار موجود است، اما میانگین قیمت آنها حدود ۴۰٬۰۰۰ تومان برای قاب گوشی سامسونگ، هواوی، شیائومی و حدود ۶۰٬۰۰۰ تومان برای انواع گوشی‌های اپل است. گارد گوشی مانند بیمه‌ای است که برای خودرو یا خانه خود تهیه می‌­کنید. هر آدم عاقلی ترجیح می‌­دهد که با اندکی هزینه در حدود چند­ ­ده هزار تومان، اسمارت فون گران قیمت خود را در برابر آسیب‌­های ناشی از به زمین افتادن و خط‌وخش بیمه کند. همچنین بسیاری از افراد مانند ورزشکارانی که با آب سروکار دارند، قاب و کاور گوشی ضدآب تهیه می‌کنند یا طبیعت‌­گردان و کسانی که کوهنوردی می­‌کنند، ترجیح می‌دهند قاب‌­های بسیار محکم و ضدضربه داشته باشند.

حفظ استایل و زیبایی با مدل های جدید قاب گوشی

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

نشت آپ

انواع قاب گوشی موجود در بازار ایران چیست؟

معمولا در بازار ایران قاب­‌های گوشی را بر اساس جنس یا طرح نام‌گذاری می‌­کنند، اما به صورت کلی به دو دسته قاب‌­های نرم و قاب­‌های سخت، تقسیم‌بندی می­‌شوند که بیشتر افراد از قاب‌­های نرم و ژله‌ای استفاده می‌­کنند:

  • قاب گوشی ژله‌ای
  • قاب گوشی چرمی
  • قاب گوشی طرح‌دار
  • قاب گوشی سیلیکونی
  • قاب گوشی آکواریومی
  • قاب گوشی پارچه‌ای
  • قاب گوشی خزدار
  • قاب گوشی فلزی
  • قاب گوشی ضدآب
  • قاب گوشی آینه‌ای و...

کاور گوشی از نظر کارایی و یا استایل دسته­‌بندی‌­های دیگری مثل کیف گوشی، فیلپ کاور، بک کاور گوشی و... نیز دارد.

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

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

از کدام سایت قاب گوشی خریداری کنیم؟

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

  • تنوع محصول بسیار بالا
  • موجود بودن محصولات
  • پشتیبانی آنلاین دائم و کارآمد
  • به روز بودن
  • قابل اعتماد بودن
  • ارسال سریع به سراسر ایران
  • سادگی سایت و امکان پیدا کردن قاب­‌های دلخواه

 

Published in فناوری

گوگل کروم ۷۰ به کاربران اجازه می‌دهد که قابلیت جدید همگام‌سازی یا Chrome Sync را در صورت تمایل غیرفعال کنند.

چند روز قبل، کاربران گوگل به عدم اطلاع‌رسانی در مورد تغییرات همگام‌‌سازی گوگل کروم جدید انتقاد کرده بودند.متیوگرین که در زمینه‌ی رمزنگاری تخصص دارد، اعلام کرد که گوگل تغییراتی در گوگل کروم ۶۹ ایجاد کرده است، ولی در مورد آن اطلاع‌رسانی نکرده است.

قضیه از این قرار بود که در تغییرات جدید گوگل کروم ۶۹، وقتی کاربران وارد جیمیل یا هر حساب کاربری گوگل خود می‌شوند، گوگل به‌صورت محرمانه، Chrome Sync را فعال می‌کند و کاربران همزمان وارد حساب کاربری‌ خود در صفحه‌ی گوگل کروم می‌شوند. 

جیمیل

در اصل گوگل، بدون اینکه به کاربران اطلاع‌رسانی کرده باشد، تغییراتی در همگام‌سازی مرورگر ایجاد کرده است. برخی کاربران ناراضی، معتقد بودند که این کار گوگل نقض حریم خصوصی کاربران است. آدریان پورتر، مدیر گوگل کروم در مورد تغییرات جدید گوگل کرم ۶۹ توضیح داد که این تغییرات به کاربر کمک می‌کنند تا متوجه شود چه افراد دیگری وارد سیستم وی شده‌اند. وقتی خبر تغییرات همگام‌سازی توسط گوگل منتشرشد؛ گوگل اعلام کرد که این تغییر اتفاقا برای سیستم‌هایی که بیش از یک کاربر دارد، بسیار مفید است و نه‌تنها ناقض حریم خصوصی نیست، بلکه در جهت حفظ حریم خصوصی کاربران طراحی شده‌ است.

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

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

پریسا تبریز، ملقب به شاهزاده‌ی امنیت گوگل و مدیر بخش مهندسی گوگل در این‌باره گفت:

ویژگی همگام‌سازی به‌صورت پیش‌فرض در نسخه‌ی بعدی گوگل کروم فعال است اما کاربرانی که تمایل به‌استفاده از این ویژگی ندارند، می‌توانند این گزینه را به‌صورت دستی غیرفعال کنند. در نسخه‌ی گوگل کروم ۷۰، کاربران در صورت غیرفعال کردن گزینه‌ی همگام‌سازی در حین ورود به حساب کاربری گوگل، دیگر وارد حساب کاربری مرورگر کروم نمی‌شوند و همگام‌سازی برای آنها صورت نخواهد گرفت.

به‌گفته‌ی پریسا تبریز، با توجه به اینکه برخی کاربران نسبت به رابط کاربری گوگل کروم ۶۹ شکایت داشتند و اعلام کرده بودند که ویژگی همگام‌سازی به‌خوبی در محل دید و دسترس کاربران قرار ندارد؛ ظاهرا در نسخه‌ی بعدی این مشکل نیز برطرف خواهد شد. دکمه‌ی سبز رنگی برای این ویژگی درنظر گرفته شده است. کاربران نه تنها هنگام فعال بودن ویژگی همگام‌سازی از روی رنگ دکمه متوجه این مساله خواهند شد؛ بلکه عبارت همگام‌سازی را در کنار نام خود در قسمت تنظیمات مشاهده خواهند کرد. درنتیجه وقتی گزینه‌ی همگام‌سازی مرورگر کروم فعال باشد، کاربران می‌توانند عبارتی همچون «(Sync as (your name» را مشاهده کنند که در جلوی عبارت Sync as، نام کاربر نوشته خواهد شد. 

در نهایت، یکی دیگر از تغییرات مربوط به نسخه‌ی گوگل کروم ۷۰ مربوط به clear cookies است. پیشتر کاربران برای پاک‌کردن کوکی‌ها باید حتما وارد حساب کاربری خود می‌شدند. در نسخه‌ی کروم ۷۰ کاربران می‌توانند بدون لاگین در حساب کاربری، کوکی‌ها را حذف کنند. 

گوگل کروم 70

از فیدبک کاربران سپاسگزاری می‌کنیم. برای نسخه‌ی گوگل کروم ۷۰ منتظر تغییراتی باشید. 

- پریسا تبریز (۲۶ سپتامبر ۲۰۱۸) 

همچنین متیو گرین در توییتی اعلام کرد: 

گوگل به انتقاد کاربران نسبت به قابلیت ورود خودکار به مرورگر و سایر تغییرات، پاسخگو است. ویژگی جدید به‌صورت اختیاری در دسترس کاربران قرار می‌گیرد. 

- متیو گرین (۲۶ سپتامبر ۲۰۱۸) 

او در توییت دیگری گفت:

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

- متیو گرین (۲۶ سپتامبر ۲۰۱۸) 

همچنین اضافه کرد:

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

Published in فناوری

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

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

جین مانستر، از تحلیلگران موسسه‌ی لوپ ونچرز، در گزارشی که برای وب‌سایت اپل اینسایدر ارسال کرده، به تشریح سرعت رشد سرویس اپل موزیک می‌پردازد:

تحقیقات ما نشان می‌دهد که سرعت جذب کاربران اشتراکی در اپل موزیک نسبت به اسپاتیفای، تا ۲.۵ برابر بیشتر است. 

مانستر در ادامه‌ی گزارشش، ادعای اخیر تیم کوک مبنی بر محبوبیت بیشتر اپل موزیک نسبت به اسپاتیفای در آمریکای شمالی را تایید می‌کند؛ وی گفته است که تعداد کاربران اشتراکی اپل موزیک در آمریکای شمالی، ۲۱ میلیون نفر است؛ حال آن‌که Spotify در این منطقه، ۲۰ میلیون کاربر اشتراکی دارد. 

این تحلیلگر می‌گوید که بخش اعظم این اتفاق، مدیون سیاست‌های اپل برای حمایت از سرویس استریم موسیقی خودش است. اپل تاکنون از یکپارچه‌سازی سرویس‌های استریم موسیقی شخص ثالث نظیر اسپاتیفای، با دستیار سیری و دیگر ویژگی‌های iOS خودداری کرده و همین موضوع است که باعث شده عده‌ی کثیری از کاربران این سیستم‌عامل به‌سمت Apple Music بروند.

با این‌همه، اپل موزیک هنوز در اول راه است و پتانسیل بیشتری برای رشد دارد. اپل موزیک هم‌اکنون ۵۰ میلیون مشترک در سراسر دنیا دارد و انتظار می‌رود که این رقم رفته‌رفته افزایش یابد. گرچه اسپاتیفای در حال حاضر محبوب‌ترین سرویس استریم موسیقی در دنیا است؛ اما نکته‌ی حائز اهمیت این است که سهم این سرویس از بازار استریم، طی چند سال اخیر از ۶۵ درصد به ۶۲ درصد کاهش یافته است. حال آن‌که در همین بازه‌ی زمانی، سهم اپل موزیک از ۳۰ درصد به ۳۴ درصد رسیده است. خاطرنشان می‌کنیم که سهم سرویس پاندورا با کاهشی ۲ درصدی مواجه شده و از ۶ درصد به ۴ درصد رسیده است.

اسپاتیفای / Spotify

اپلیکیشن اسپاتیفای

یکی از برتری‌های اسپاتیفای نسبت به اپل موزیک، این است که این سرویس روی هر دو سیستم‌عامل اندروید و iOS به‌خوبی و بدون کمترین مشکلی کار می‌کند. گرچه اپل موزیک مدتی است که برای اندروید اتو نیز در دسترس قرار گرفته است؛ اما آمارها نشان می‌دهند که ۹۵ درصد از ۴۵ میلیون مشترک این سرویس، از دستگاهی با سیستم‌عامل iOS استفاده می‌کنند. کاربران اندرویدی دلایل متعددی برای عدم استفاده از اپل موزیک روی دستگاه‌شان دارند؛ اکثر ویژگی‌های کاربردی این سرویس نظیر یکپارچه‌بودن با دستیار سیری یا همگام‌سازی با هوم‌پاد در اندروید از کار می‌افتند.

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

گفتنی است که تعداد کاربران اسپاتیفای در سراسر دنیا به ۱۸۰ میلیون نفر می‌رسد که ۸۳ میلیون نفر از آن‌ها، سرویس اشتراکی دارند.

Published in فناوری

فیسبوک امروز در جریان کنفرانس توسعه‌دهندگان Oculus Connect از آکیولس کوئست، جدیدترین هدست واقعیت مجازی مستقل خود با قیمت ۳۹۹ دلار رونمایی کرد.

آکیولس، امروز جدیدترین هدست مستقل واقعیت مجازی خود را با نام آکیولس کوئست (Oculus Quest) معرفی کرد. این محصول با برچسب قیمت ۳۹۹ دلار بهار آینده‌ عرضه خواهد شد. به گفته‌ی مارک زاکربرگ، مدیرعامل فیسبوک، این شرکت با آکیولس کوئست، نخستین نسل از محصولات آکیولس را تکمیل را خواهد کرد. زاکربرگ معتقد است که هدست جدید آکیولس، مشخصه‌های کلیدی سیستم ایده‌آل واقعیت مجازی از جمله طراحی بی‌سیم، کنترلرهای دستی مجازی و ردیابی موقعیتی کامل را با یکدیگر ترکیب می‌کند. وی می‌گوید:

ما بر این باوریم که اگر بتوانیم این سه ویژگی را درون یک هدست با یکدیگر ادغام کنیم، این محصول به شالوده‌ی نسل جدید واقعیت مجازی تبدیل خواهد شد.

Oculus Quest

آکیولس کوئست نسخه‌ی مصرفی پروژه‌ی پیشین سانتا کروز محسوب می‌شود. این هدست از کنترلرهای حرکتی شبیه به آکیولس تاچ بهره می‌گیرد و چهار دوربین زاویه‌ی عریض با فراهم کردن ردیابی موقعیتی، امکان حرکت در فضای مجازی را به کاربر می‌دهند. انتظار می‌رود کوئست از تجارب در سطح هدست ریفت با کاتالوگی با بیش از ۵۰ عنوان از جمله بازی‌های شناخته‌شده‌ی فعلی همچون شبیه‌ساز سنگ‌نوردیِ The Climb و بازی ماجراجویی پازلِMoss پشتیبانی کند.

Oculus Quest

آکیولس کوئست در اصل هدست وابسته و رده‌بالای آکیولس ریفت را با دستگاه مستقل و نسبتا ارزان آکیولس گوکه ابتدای سال جاری میلادی عرضه شد، ترکیب کرده است. هدست جدید آکیولس از همان نمایشگر آکیولس گو با وضوح تصویر ۱۴۴۰ × ۱۶۰۰ پیکسل در هر چشم استفاده می‌کند. با این حال، قدرت این هدست هنوز نامشخص است؛ اما به‌زودی در جریان کنفرانس توسعه‌دهندگان آکیولس کانکت که هم‌اکنون در حال برگزاری است، قطعا اطلاعات بیشتری از آن فاش خواهد شد.

Published in فناوری

رندر مطبوعاتی گوشی هوشمند جدید ال‌جی با نام V40 ThinQ اخیرا توسط ایوان بلاس منتشر شده است.

افشاگری‌های اخیر درباره‌ی محصول جدید ال‌جی با نام LG V40 ThinQ بسیاری از طرفداران این برند را سردرگم کرده است. آنها پیش از این با ابهاماتی درباره‌ی وجود بریدگی بالای صفحه نمایش یا قرارگیری دوربین سه‌گانه در پشت دستگاه روبه‌رو بوده‌اند. البته هیچ راهی بهتر از نگاه به رندر مطبوعاتی تازه منتشر شده توسط ایوان بلاس برای متقاعد کردن طرفداران این برند وجود ندارد.

رندر جدید یک نسخه AT&T از LG V40 ThinQ است که دستگاه را از هر دو طرف جلو و پشت نشان می‌دهد. نکته‌‌ای که در این تصویر جالب به‌نظر می‌رسد بریدگی صفحه نمایش است که احتمالاً توسط یک نوار مشکی رنگ که سرتاسر قاب بالای گوشی را در برگرفته پنهان شده است. با این حال به وضوح می‌توانید لوگوی AT&T و اعلان NFC را در بخش ضخیم‌تر این نوار مشکی رنگ مشاهده کنید.

در پشت دستگاه دوربینی مشاهده می‌شود که به سه لنز مجهز است و پیش‌تر نیز شایعه‌ی آن شنیده شده بود. بر خلاف دیگر گوشی‌های هوشمند نظیر هواوی P20 Pro و سامسونگ Galaxy A7 با سه دوربین اصلی که به صورت عمودی قرار دارند، ال جی تصمیم گرفته محصول جدید خود را به دوربین‌ سه‌گانه‌ با چیدمان افقی تجهیز کند. البته به‌نظر نمی‌رسد این موضوع تفاوتی در کارایی دوربین ایجاد کند.

علاوه بر این، رندر جدید مطبوعاتی یک دکمه اضافه در LG V40 ThinQ را نیز نشان می‌دهد که احتمالاً به منظور فراخوانی دستیار گوگل در کم‌ترین زمان ممکن در نظر گرفته شده است. گوشی LG G7 نیز به دکمه‌ی اختصاصی دستیار گوگل مجهز بود که این موضوع در این روزها نشان‌دهنده‌ی توجه ویژه‌ی این شرکت به هوش مصنوعی است. با توجه به سیاست‌ جدید ال‌جی در آینده‌ی نزدیک شاهد استفاده از دکمه‌‌ی اختصاصی دستیار هوشمند در گوشی‌های هوشمند پرچم‌دار این شرکت به عنوان یک ابزار اصلی خواهیم بود.

Published in فناوری
پنج شنبه, 21 -2664 11:01

برنامه نویسی سیستم چیست؟

بر اساس تعاریف جدید برنامه‌نویسی سطح پائین و برنامه‌نویسی سیستم یکی نیستند و این دو مفهوم به اشتباه یکسان فرض شده‌ان

ترکیب دو ایده‌ی برنامه‌نویسی سطح پائین (کار با جزئیات سخت‌افزاری و پیاده‌سازی ماشین) و طراحی سیستم (ساخت و مدیریت یک مجموعه‌ی پیچیده از مؤلفه‌های مرتبط) به نظر غیرضروری می‌رسد؛ اما این قضیه تا چه اندازه صحیح است؟ و از تعریف مجدد سیستم‌ها به چه نتیجه‌ای می‌توان رسید؟

دهه‌ی ۱۹۷۰: پیشرفت اسمبلی

برای درک تکامل اصطلاح برنامه‌نویسی سیستم بازگشت به منشأ سیستم‌های کامپیوتری مدرن ضروری است. دقیقا مشخص نیست چه کسی این عبارت را اختراع کرده است اما بر اساس پژوهش‌ها تلاش‌های جدی برای تعریف سیستم‌های کامپیوتری تقریبا از اوایل دهه‌ی ۷۰ آغاز شده است. در مقاله‌ای با نام زبان‌های برنامه‌نویسی سیستم به این تعریف اشاره شده است:

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

۱. مسئله‌ی قابل حل ماهیت گسترده‌ای دارد و شامل تعداد زیادی مسائل فرعی و متنوع است.

۲. از برنامه‌ی سیستمی برای پشتیبانی از برنامه‌های کاربردی و نرم‌افزاری دیگر استفاده می‌شود اما درعین‌حال می‌تواند بسته‌ی کاملی از برنامه‌ها هم باشد.

۳. برنامه‌ی سیستمی برای تولید پیوسته طراحی شده است نه به عنوان راه‌حلی یک جا برای حل یک مشکل در برنامه‌ها

۴. برنامه‌ی سیستمی از نظر تعداد و انواع ویژگی‌های تحت پشتیبانی به صورت پیوسته در حال تکامل است.

۵. یک برنامه‌ی سیستمی به یک ساختار یا برنامه‌ی مشخص داخل و میان ماژول‌ها (برای مثال برقراری ارتباط) نیاز دارد و معمولا توسط بیش از یک شخص یا گروهی از اشخاص طراحی و پیاده‌سازی می‌شود.

این تعریف تا حدودی قابل قبول است. سیستم‌های کامپیوتری معمولا دارای مقیاس گسترده و کاربرد طولانی هستند و به مرور زمان تغییر می‌کنند. البته با این که این تعریف بیشتر توصیفی است اما چشم‌انداز اصلی آن جداسازی زبان‌های سطح پائین از زبان‌های سیستمی است (برای مثال مقایسه‌ی اسمبلی با فرترن).

زبان سیستم

هدف از زبان برنامه‌نویسی سیستم فراهم کردن زبانی است که بتوان بدون نگرانی در مورد دستکاری بیت‌ها از آن استفاده کرد و درعین‌حال به کدی دست یافت که عملکرد آن از کدهای دستی بهتر باشد. چنین زبانی باید اختصار و خوانایی زبان‌های سطح بالا را با بازدهی فضا و زمان و دسترسی به امکانات سیستم‌عامل و ماشین زبان اسمبلر را ترکیب کند. زمان طراحی، نوشتن و اشکال‌زدایی باید بدون تحمیل سربار بر منابع سیستمی به حداقل برسند. پژوهشگرهای CMU زبانی به نام BLISS (زبانی برای برنامه‌نویسی سیستم) را منتشر کرده‌اند که به این صورت تعریف می‌شود:

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

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

در اینجا مؤلفان، زبان پیاده‌سازی را بالاتر از اسمبلی و پائین‌تر زبان طراحی می‌دانند. بر اساس پژوهش‌های قبلی، طراحی و پیاده سازی سیستم هرکدام زبان مجزایی دارند. آخرین مدخل مربوط به برنامه‌نویسی سیستم را می‌توان در یک متن آموزشی در مورد یادگیری برنامه‌نویسی سیستم مشاهده کرد که در ‍۱۹۷۲ نوشته شده است.

اما تعریف دقیق برنامه‌نویسی سیستم چیست؟

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

در اولین روزهای اختراع کامپیوتر، مردم با دستورالعمل‌های ابتدایی بین دو حالت On و Off با کامپیوتر ارتباط برقرار می‌کردند. خیلی زود مردم به دنبال دستورالعمل‌های پیچیده‌تر رفتند. برای مثال می‌خواستند خروجی این مسأله را در کامپیوتر ببینند: X=30*Y؛ با توجه به این که Y=10 در نتیجه X کدام است؟ کامپیوترهای کنونی بدون برنامه‌های سیستمی قادر به درک چنین زبانی نیستند.

برنامه نویسی سیستم

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

دهه‌ی ۱۹۹۰: ظهور اسکریپت‌نویسی

در دهه‌ی ۷۰ و ۸۰ اغلب پژوهشگرها برنامه‌نویسی سیستم را نقطه‌ی مقابل برنامه‌نویسی اسمبلی می‌دانستند. در آن دوره ابزار خوبی برای ساخت سیستم‌ها وجود نداشت (البته هیچ اطمینانی از وجود Lisp در میان این زبان‌ها وجود ندارد هیچ کدام از منابع به Lisp اشاره نکرده‌اند، با این حال ماشین‌های Lisp وجود داشتند).

در اواسط دهه‌ی ۹۰، با ظهور زبان‌های اسکریپت‌نویسی داینامیک تغییرات عمده‌ای در زبان‌های برنامه‌نویسی رخ داد. بهبود سیستم‌های اسکریپت‌نویسی مثل Bash، زبان‌هایی مثل پرل (۱۹۸۷)، Tcl ، پایتون (۱۹۹۰)، Ruby ،PHP  و جاوا اسکریپت (۱۹۹۵) به توسعه‌ی برنامه‌نویسی کمک کرد. این تغییرات در مقاله‌ی تأثیرگذار اوسترهاوت با عنوان  اسکریپت نویسی: برنامه‌نویسی سطح بالای قرن بیست‌ویک (۱۹۹۸) به اوج خود رسیدند. به موج حاصل از این تغییرات دوگانگی اوسترهاوت بین زبان‌های برنامه‌نویسی سیستمی و زبان‌های اسکریپت‌نویسی گفته می‌شود.

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

در مقابل، زبان‌های اسکریپت‌نویسی برای چسباندن طراحی شده‌اند: مجموعه‌ای از مؤلفه‌های قدرتمند دارند و در اصل برای اتصال این مؤلفه‌ها با یکدیگر در نظر گرفته شده‌اند. زبان‌های برنامه‌نویسی برای کمک به مدیریت پیچیدگی،Strongly Typed یا وابسته‌ی زیاد به نوع هستند؛ مفهومی که در مقابل Weakly Typed یا وابسته کم به نوع قرار می‌گیرد. به این معنی که باید نوع متغیرها، ورودی‌ها و خروجی‌‌ها توابع و... دقیقا تعیین شوند و کامپایلر پیش از اجرای کدها و رسیدن به مرحله‌ی اجرای Runtime و بیلد، این مورد را بررسی می‌کند. در حالی‌که زبان‌های اسکریپت‌نویسی Typeless (بدون نوع) هستند. برای مثال می‌توان از تعریف متغیر بدون نوع در آن‌ها استفاده کرد و کامپایلر تمام کارها را برعهده دارد. از این‌رو برای ساده‌سازی روابط بین مؤلفه‌ها و توسعه‌ی سریع برنامه‌ها از آن‌ها استفاده می‌شود. گرایش‌های جدید از جمله ماشین‌های سریع‌تر، زبان‌های اسکریپت‌نویسی بهتر، اهمیت فزاینده‌ی واسطه‌های کاربری گرافیکی و معماری‌های مؤلفه‌ای و رشد اینترنت به شدت کاربرد زبان‌های اسکریپت‌نویسی را بالابرده‌اند.

در سطح تخصصی اوسترهاوت اسکریپت‌نویسی و سیستم را در راستای محورهای Type Safety (ایمنی نوع) و دستورالعمل به ازای هر عبارت مقایسه کرده است. Type Safety یا ایمنی نوع به قابلیت یا ویژگی یک زبان برنامه‌نویسی برای جلوگیری یا کاهش رخ دادن Type Errors یا خطاهای ناشی از عدم تطابق نوع گفته می‌شود. برای مثال تعریف متغیری از نوع اعشاری و به کارگیری آن به جای اعداد صحیح، منجر به وقوع یک Type Error می‌شود. اوسترهاوت در سطح طراحی بر نقش‌های جدید هر کلاس زبانی تأکید می‌کند: برنامه‌نویسی سیستم برای ساخت مؤلفه‌ها و اسکریپت‌نویسی برای چسباندن آن‌ها به یکدیگر درنظر گرفته می‌شوند.

نمودار اوسترهاوت

 

مقایسه‌ی زبان‌های برنامه‌نویسی بر اساس سطح و درجه‌ی Typing آن‌ها (زبان‌های سطح بالاتر دستورالعمل‌های ماشین بیشتری را برای هر عبارت زبانی اجرای می‌کنند) زبان‌های برنامه‌نویسی سیستم مثل C از نوع قوی و سطح متوسط هستند (۵ تا ۱۰ دستورالعمل به ازای هر عبارت). زبان‌های ۱۰۰ تا ۱۰۰۰ 

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

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

دهه‌ی ۲۰۱۰: مرزها محو می‌شوند

از دهه‌ی گذشته مرز بین زبان‌های اسکریپت‌نویسی و زبان‌های برنامه‌نویسی سیستمی در حال محو شدن است. شرکت‌هایی مثل Dropbox توانستند سیستم‌های مقیاس‌پذیر و بزرگی را روی پایتون توسعه دهند. از جاوا اسکریپت برای تبدیل UI-های پیچیده و بلادرنگ (Real-Time) در میلیاردها صفحه‌ی وب استفاده شده است. طبقه‌بندی تدریجی در پایتون، جاوا اسکریپت و دیگر زبان‌های اسکریپت‌نویسی شدت پیدا کرد و به این صورت گذار از کد اولیه به کد تولید تنها با اضافه کردن اطلاعات نوع ایستا امکان‌پذیر شد.

درعین‌حال منابع انبوه مهندسی برای زبان‌های ایستا (مثل جاوا اسکریپت) و زبان‌های پویا (مثل LuaJIT از Lua یا V8 جاوا اسکریپت و PyPy پایتون) وارد کامپایلرهای JIT شدند و آن‌ها را به رقیب عملکردی سیستم‌های زبان‌های برنامه‌نویسی سیستمی (C++، C) تبدیل کردند. سیستم‌های توزیع‌شده و بزرگی مثل اسپارک در اسکالا نوشته شدند. زبان‌های برنامه‌نویسی جدید مثل جولیا و سویفت هم محدودیت‌هایی را برای زبان‌های زباله‌روب (Garbage Collector) به وجود آوردند.

هیئتی به نام برنامه‌نویسی سیستم در سال ۲۰۱۴ و بعد از آن، شامل بزرگ‌ترین مغزهای زبان‌های برنامه‌نویسی کنونی از جمله بیجارن استروستراپ (خالق ++C)، روب پایک (خالق Go)، آندری آلکساندرسکو (توسعه‌دهنده‌ی D) و نیکوماتساکیس (توسعه‌دهنده‌ی Rust). زبان برنامه‌نویسی سیستم در سال ۲۰۱۴ را این گونه توصیف می‌کنند:

  • نیکو ماستاکیس: برنامه‌نویسی سیستم مانند نوشتن برنامه‌های سمت کلاینت است، یعنی دقیقا نقطه‌ی مقابل GO قرار می‌گیرد. در این برنامه‌ها تأخیر بالایی وجود دارد و همین‌طور پیش‌نیازهایی مثل امنیت بالا و پیش‌نیازهای دیگر وجود دارند که در سمت سرور ارائه نمی‌شوند.
  • بیجارت استروستراپ: برنامه‌نویسی سیستم از کار با سخت‌افزار سرچشمه گرفته است که بعد از آن پیچیدگی برنامه‌ها افزایش یافت. در برنامه‌نویسی سیستم با این پیچیدگی‌ها سروکار دارید، پس اگر با مشکلاتی مثل محدودیت منابع روبه‌رو شدید، بدانید در قلمروی برنامه‌نویسی سیستم قرار گرفته‌اید. محدودیت‌ها تعیین می‌کنند زبان، برنامه‌نویسی سیستم است یا خیر. آیا حافظه‌ رو به اتمام است؟ آیا زمان شما رو به پایان است؟
  • راب پایک: وقتی برای اولین بار GO را معرفی کردیم آن را یک زبان برنامه‌نویسی سیستم خواندیم و البته متأسفانه افرادی به اشتباه تصور کردند این زبان برای نوشتن سیستم عامل طراحی شده است. به عقیده‌ی ما این زبان مخصوص نوشتن سرور است یا می‌توان گفت یک زبان زیرساخت ابری است. بر اساس یک تعریف دیگر به برنامه‌نویسی که در کلود اجرا شود برنامه‌نویسی سیستم گفته می‌شود.
  • آندری آلکساندرسکو: من چند تست برای تعریف برنامه‌نویسی سیستم اجرا کردم. زبان‌های برنامه‌نویسی سیستم باید امکان نوشتن تخصیص‌گر حافظه را بدهند. در این زبان باید قادر به ساخت یک شماره در اشاره‌گر باشید زیرا عملکرد سخت‌افزار به این صورت است.

جاوا اسکریپت

رابطه‌ی برنامه‌نویسی سیستم با عملکرد بالا چیست؟ با محدودیت‌های منابع و کنترل سخت‌افزاری چطور؟ یا زیرساخت ابری؟ به‌طورکلی به نظر می‌رسد زبان‌هایی مثل C ،C++ ،Rust و D از نظر سطح انتزاع و خلاصه بودن از ماشین متمایز می‌شوند. این زبان‌ها جزئیات سخت‌افزار مثل تخصیص حافظه یا قالب و مدیریت دقیق منابع را نمایش می‌دهند.

یک تعریف دیگر هم برای آن وجود دارد: در صورت روبه‌رو شدن با مشکل بازدهی یا بهینه‌سازی چه مقدار آزادی برای حل آن دارید؟ در زبان‌های برنامه‌نویسی سطح پائین با کنترل دقیق جزئیات ماشین می‌توانید هر مشکلی را حل کنید. می‌توانید دستورالعمل را بر کل آرایه‌ها اعمال کنید و ساختار داده‌ای به‌دست‌آمده را در کش (Cache)ذخیره کنید. همان‌طور که انواع ایستا مثل جمع‌ اعداد صحیح با اطمینان بیشتری اجرا می‌شوند زبان‌های برنامه‌نویسی سطح پائین هم اجرای مطمئن‌تر دارند به‌طوری‌که کدها همان‌طور که تعریف می‌شوند اجرا می‌شوند.

در مقابل، بهینه‌سازی زبان‌های تفسیر شده بسیار پیچیده است. به‌راحتی نمی‌توان از اجرای قابل‌انتظار کد توسط Runtime اطمینان حاصل کرد. همین مسئله در کامپایلرهای موازی‌ خودکار هم وجود دارد (Vectorizaiton یا برنامه‌نویسی آرایه‌ای یک مدل برنامه‌نویسی نیست. بلکه مانند نوشتن یک واسطه در پایتون است، برای مثال انتظار دارید یک تابع در صورت فراخوانی خروجی int (صحیح) تولید کند).

امروز: بنابراین برنامه‌نویسی سیستم چیست؟

اغلب به برنامه‌نویسی سطح پائین، برنامه‌نویسی سیستم می‌گویند (با اشاره به جزئیات ماشین)؛ اما معنی سیستم چیست؟ با بازگشت به تعریف ۱۹۷۲ می‌توان گفت:

۱.مسئله‌ی قابل حل، ماهیت گسترده‌ای دارد و شامل تعداد زیادی مسائل فرعی و متنوع است.

۲. از برنامه‌ی سیستمی برای پشتیبانی از برنامه‌های کاربردی و نرم‌افزاری دیگر استفاده می‌شود اما درعین‌حال می‌تواند بسته‌ی کاملی از برنامه‌ها هم باشد.

۳. برنامه‌ی سیستمی برای تولید پیوسته طراحی شده است نه به عنوان راه‌حلی یک جا برای حل مشکلی در برنامه‌ها.

۴. برنامه‌ی سیستمی از نظر تعداد و انواع ویژگی‌های تحت پشتیبانی به صورت پیوسته در حال تکامل است.

۵. یک برنامه‌ی سیستمی به یک ساختار یا برنامه‌ی مشخص داخل و میان ماژول‌ها (برای مثال برقراری ارتباط) نیاز دارد و معمولا توسط بیش از یک شخص یا گروهی از اشخاص طراحی و پیاده‌سازی می‌شود.

به نظر می‌رسد این گزینه‌ها بیشتر به مشکلات مهندسی نرم‌افزار اشاره دارند (پیمانه‌ای بودن، قابلیت استفاده‌ی مجدد، تکامل کد) تا مشکلات عملکردی سطح پائین. این یعنی هر زبان برنامه‌نویسی که حل این مشکلات را در اولویت قرار دهد یک زبان برنامه‌نویسی سیستمی است! البته این گزینه‌ها برای تعریف یک زبان برنامه‌نویسی سیستمی کافی نیستند؛ بنابراین می‌توان گفت زبان‌های برنامه‌نویسی پویا یا داینامیک از زبان‌های سیستمی دور هستند.

سی پلاس پلاس

اما مفهوم دقیق این تعریف چیست: زبان‌های تابعی مثل Ocaml و Haskell بیشتر از زبان‌های سطح پائین مثل C یا ++C به سیستم وابسته هستند. هنگام آموزش برنامه‌نویسی باید اصول برنامه‌نویسی تابعی مثل ارزش ثبات، تأثیر سیستم‌های نوع غنی در بهبود طراحی واسطه و استفاده از توابع مرتبه بالاتر را درنظر گرفت. مدارس باید برنامه‌نویسی سیستم و سطح پائین را آموزش دهند.

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

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

در قدم بعدی، برنامه‌نویس زبان سطح پائین باید به این سؤال پاسخ دهد که کدام ایده‌های طراحی سیستم را می‌توان برای کار با سخت‌افزار مدرن تطبیق داد. انجمن Rust در این رابطه عملکرد نوآورانه‌ای داشته است، این انجمن چگونگی پیاده‌سازی اصول برنامه‌نویسی تابعی یا طراحی نرم‌افزاری بر مسائل سطح پائین را بررسی می‌کند (برای مثال مسائلی مثل قراردادها، کنترل خطا یا امنیت حافظه).

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

 

Published in فناوری

گوگل از مدتی پیش ممنوعیت تبلیغات ارزهای رمزنگاری شده را اجرا کرده است اما این ممنوعیت از ماه آینده‌ی میلادی تاحدودی لغو می‌شود.

گزارش سرویس رسانه‌ای CNBC در مورد تبلیغات گوگل به‌تازگی منتشر شده است و خبر مهم آن، لغو محدود ممنوعیت تبلیغات ارز رمزنگاری شده است. این رفع محدودیت، به صرافی‌های قانونی ارزهای دیجیتال امکان می‌دهد تا تبلیغات مورد نظر خود را در کشورهای آمریکا و ژاپن از سیستم تبلیغات گوگل خریداری کنند. این لغو محدودیت،‌ از  ۹ مهر (ماه آینده‌ی میلادی) اجرایی می‌شود.

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

دلیل رفع محدودیت توسط گوگل هنوز مشخص نیست؛ اما به‌نظر می‌رسد این شرکت به این نتیجه رسیده است که هایپ (HYIP) دروغین پیرامون ارزهای دیجیتال و افزایش ناگهانی قیمت آنها،‌ تقریباً به پایان رسیده است. فیسبوک که اولین محدودیت گسترده در برابر تبلیغات ارزهای دیجیتال را از دی ماه ۱۳۹۶ (ژانویه‌ی ۲۰۱۸) اجرا کرد، در خرداد امسال (ماه ژوئن) محدودیت‌های خود را برای برخی تبلیغات این ارزها برداشت.

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

Published in فناوری
جمعه, 03 فروردين 777 01:08

آغاز همکاری آمازون و اسنپ‌ چت

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

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

Visual Search هنوز در دسترس تمام کاربران قرار نگرفته، اما طبق اعلام شرکت تا روزهای آینده برای همه در دسترس خواهد بود. انتظار می‌رود ویژگی جدید هم روی دستگاه‌های اندروید و هم دستگاه‌های iOS قابل استفاده باشد؛ اما این موضوع هنوز به‌طور رسمی از طرف Snapchat اعلام نشده است.

snapchat

نحوه‌ی کار ویژگی جدید اسنپ‌چت: با قرار دادن دوربین اسنپ‌چت روی یک محصول فیزیکی یا بارکد و نگه داشتن و فشار دادن صفحه نمایش دوربین، عملیات جستجو آغاز می‌شود. بعد از شناسایی محصول یا بارکد، یک کارت آمازون روی صفحه ظاهر می‌شود. کاربر با کلیک کردن روی کارت، به صفحه‌ی محصول مورد نظر در اپلیکیشنآمازون هدایت می‌شود و می‌تواند فرآیند خرید را تکمیل کند. در صورت نصب نبودن اپلیکیشن Amazon، کاربر به صفحه‌ی محصول در وب‌سایت آمازون هدایت خواهد شد.

Published in فناوری