Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
291 - Telegram Web
Telegram Web
#Javascript
#js

JavaScript Standard Style

این خلاصه ای از قوانین جاوا اسکریپت استاندارد است.

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

https://standardjs.com/rules.html
https://github.com/standard/standard

@ABlueDeveloper
#VisualStudio
#VisualStudio2019
#VS2019

مایکروسافت نسخه‌ی جدید IDE ویژوال استودیو ۲۰۱۹ را رسما معرفی کرد .

@ABlueDeveloper
This media is not supported in your browser
VIEW IN TELEGRAM
#عصر_خدمات
#عصر_تجربه

این شاهکار تکنولوژی فوق العاده را از گوگل به تصویر می کشد.


@ABlueDeveloper
This media is not supported in your browser
VIEW IN TELEGRAM
#googlemaps

سرانجام گوگل مپ تغییراتی اساسی در اپلیکیشن خود برای دسترسی آسانتر مردم بوجود آورد.
@ABlueDeveloper
#Javascript
#Java

Chris Heilmann:

ارتباط Java با JavaScript مانند ارتباط Car با Carpet است.

@ABlueDeveloper
فونتی که باعث تقویت حافظه شما میشه!


محققان دانشگاه RMIT فونتی ساختن که میتونه باعث تقویت حافظه شما بشه!

ولی چطوری اینکارو انجام میده؟

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

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

نتیجه کارشون هم واقعا جواب داده چون طبق تحقیقی که روی 400 نفر انجام دادن مشخص شده کسایی که یک متن رو خاص رو با این فونت خوندن تونستن 57 درصد متن رو به یاد بیارن در صورتی که کسایی که همون متن رو با فونت Arial خوندن، فقط تونستن 50 درصد اون رو به یاد بیارن.

‏این محققان اسم این فونت رو Sans Forgetica گذاشتن و اون رو میتونین از سایتشون دانلود کنید. همچنین افزونه کروم هم براش ساختن تا هر چیزی که تو اینترنت میخونین با این فونت باشه!
لینک دانلود:
http://sansforgetica.rmit/
@ABlueDeveloper
#RequireJS
#Javascript

معرفی لایبرری RequireJS

لایبرری RequireJS یک فایل JavaScript و ماژول لودر است.این ابزار برای استفاده در مرورگر بهینه شده است و میتواند در محیط های دیگر JavaScript مانند Rhino و Node نیز استفاده شود.

استفاده از یک اسکریپت لودر مژولار (modular script loader) مانند RequireJS میتواند باعث افزایش سرعت و کیفیت کد شما شود.

دارای یک ابزار بهینه شده است که شما میتوانید آن را به عنوان قسمتی از پکیج هایتان برای اجرای کدهایتان اجرا کنید.

ابزار بهینه سازی می تواند فایل های جاوا اسکریپت شما را برای کارایی بهتر ترکیب و کم حجم کنند.
https://requirejs.org/

📌 لینک کانال
@ABlueDeveloper
This media is not supported in your browser
VIEW IN TELEGRAM
#BillGate
#Viral

وقتی بیل گیتس ویدئوی وایرال میسازه نتیجش میشه این
حتما این ویدئوی جذاب رو ببینید,سادگی و خلاقیت میشه جذابیت
When BillGates makes a viral video

@ABlueDeveloper
گوگل ابزار Google Mobile Friendly Test را به طور رایگان در اختیار وبمستران قرار داده تا از آن برای بررسی فاکتورهای موبایل فرندلی درصفحات سایت خود استفاده کنند.

@ABlueDeveloper
#SSL
#HTTPS

🔸 گواهینامه امنیتی SSL چیست؟

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

🔹 گواهینامه SSL چیست؟

اطلاعات یک سایت در بستر HTTP که مخفف Hyper Text Transfer Protocol است به صورت متن ساده یا plain text بر روی پورت 80 رد و بدل می‌شوند. به همین دلیل چون این داده‌ها به صورت متنی هستند به راحتی توسط افرادی قابل خواندن هستند. به عنوان نمونه اگر پسورد یا اطلاعات بانکی خود را در یک سایت که فاقد SSL است وارد کنید امکان شنود آن توسط ارائه دهنده اینترنت وجود خواهد داشت. به همین دلیل استفاده از بستر HTTP برای زمانی که اطلاعات حساس و حیاتی رد و بدل می‌کنید کاری بسیار خطرناک است.

همین مسئله باعث به وجود آمدن پروتکل HTTPS شد که داده‌ها در آن رمزنگاری شده و در پورت 443 رد و بدل می‌شود. اما تفاوتی که در HTTP و HTTPS وجود دارد این است که داده‌ها در پروتکل HTTPS توسط SSL که مخفف Secure Socket Layer می‌باشد بین سرویس دهنده(سرور) و سرویس گیرنده(کاربر) Encrypt یا به اصطلاح رمزنگاری می‌شود.

داده‌های رد و بدل شده در پروتکل HTTPS که توسط SSL انجام می‌گیرد، بین سرویس دهنده(Server) و سرویس گیرنده(Client) توسط کلیدهای خصوصی و عمومی بین هر دو طرف رمزنگاری(Encrypt) شده و در سمت دیگر رمزگشایی(Decrypt) می‌شود. پس از برقراری ارتباط با پروتکل امن SSL داده‌ها توسط دو کلید رمزنگاری می‌شوند. کلید عمومی در این بین برای کاربران شخص سوم(بازدیدکنندگان یک سایت) قابل دسترسی و مشاهده است اما کلید خصوصی صرفا برای ارسال کننده و دریافت کننده داده قابل مشاهده خواهد بود.

🔶 انواع گواهینامه‌های امنیتی SSL

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

گواهینامه ی DV یا Domain Validated SSL Certificate: این نوع SSL صرفا برای تایید دامنه است که در ظاهر نوار آدرس همراه با آیکون سبز رنگ HTTPS می‌باشد.

گوتهینامه ی OV یا Organization Validated SSL Certificate: این نوع SSL برای تایید شرکت یا سازمان است که در ظاهر نوار آدرس همراه با آیکون سبز رنگ HTTPS می‌باشد و تفاوت ظاهری با نوع DV ندارد.

گواهینامه ی EV یا Extended Validated SSL Certificate: این نوع SSL برای تایید دامنه و تایید سازمان است که در ظاهر نوار آدرس همراه با آیکون سبز رنگ HTTPS و نام شرکت یا سازمان مربوطه می‌باشد.
به این نکته توجه داشته باشید که، هیچ محدودیتی برای تهیه گواهینامه DV وجود ندارد. اما گواهینامه‌های OV و EV تنها به اشخاص حقوقی اعطا می‌شود. همچنین برای تهیه SSL EV نیاز به ارسال مدارک حقوقی خواهید داشت.

📌 مزایا و معایب استفاده از SSL

1️⃣ همانطور که در بالا اشاره شد نصب SSL می‌تواند از شنود و ردگیری داده‌ها که بین کاربران رد و بدل می‌شود جلوگیری کند. بنابراین اولین و اصلی‌ترین مزیت استفاده از HTTPS افزایش امنیت سایت خواهد بود.
2️⃣ دومین مزیت SSL این است که از آنجایی که نصب SSL به عنوان یکی از مهم‌ترین فاکتورهای سئو گوگل شناخته شده است و گوگل برای سایت‌هایی که از HTTPS استفاده می‌کنند امتیاز بیشتری در نظر گرفته است، بنابراین استفاده از آن می‌تواند روی سئو سایت تاثیر بسیار خوبی داشته باشد.

3️⃣ سومین مزیت استفاده از پروتکل امن SSL امکان گرفتن نماد اعتماد الکترونیکی دو ستاره است.

♦️ در حالت کلی نمیتوان گفت که معایب ssl اصلا وجود داشته باشد. اما لااقل برای ما کاربران ایرانی به دلیل عدم کارکرد صحیح و پشتیبانی ISP ها از پروتکل امن SSL گاها ارتباط بین سایت در این پروتکل دچار مشکل شده و با کندی سرعت در سایت‌های استفاده کننده مواجه می‌شویم. البته این موضوع دیگر مثل گذشته شدید نیست و خیلی کمتر رخ می‌دهد.

💠 بهترین SSL رایگان

شرکت‌های بزرگ اینترنتی همیشه به دنبال امن‌تر کردن اینترنت هستند. همین موضوع باعث به وجود آمدن گروه‌هایی شده است که اقدام به ارائه SSL رایگان برای سایت‌ها می‌کنند که خوشبختانه امکان استفاده از آنها برای دامنه‌های IR نیز گاها فراهم است. در زیر به معرفی سه مورد از ارائه دهنده های SSL رایگان می‌پردازم.
1. Let’s Encrypt

گواهینامه امنیتی Let’s Encrypt توسط گروه پژوهشی به نام ISRG ایجاد شده است که شرکت‌های بزرگی نظیر فایرفاکس، گوگل، سیسکو، دیتاسنتر OVH و… در به وجود آمدن آن نقش اساسی دارند. استفاده از این SSL کاملا رایگان بوده و در هاست‌های Cpanel به این صورت است که هر سه ماه یکبار به صورت خودکار تمدید می‌شود. همچنین امکان استفاده از آن برای دامنه‌های IR نیز فراهم است.
2. SSL For Free
گواهینامه امنیتی SSL For Free نیز به این صورت عمل می‌کند که کلید خصوصی با استفاده از یک API تحت وب توسط مرورگر ایجاد می‌شود. سپس اگر مرورگر شما از این API پشتیبانی کند بعد از اینکه برای یک بار ایجاد شد پاک می‌شود اما در غیر این صورت با استفاده از آخرین نسخه OpenSSL کلیدها در سرور سایت تولید خواهند شد.
3. CloudFlare
گواهینامه امنیتی CloudFlare در کنار خدمات دیگر شرکت کلودفلر از جمله CDN، افزایش سرعت سایت و جلوگیری از حملات DDOS قرار دارد. SSL رایگان کلودفلر به این صورت است که چند گواهینامه به صورت اشتراکی برای چندین دامنه صادر می‌شود. روند تمدید آن نیز به صورت یکساله است که پس از گذشت هر سال به صورت خودکار تمدید خواهد شد. اما تنها اشکال استفاده از این گواهینامه این است که در دامنه IR. به دلیل تحریم امکان استفاده از آن وجود ندارد. در حال حاضر نیز SSL استفاده شده روی دامنه وبلاگ بنده از همین کلودفلر است.

🌐 نکات مهم برای استفاده و خرید SSL

🖌 اگر از دامنه IR. استفاده می‌کنید باید حتما در هنگام خرید دقت کنید که پشتیبانی از دامنه ملی در گواهینامه امنیتی وجود داشته باشد.
🖌 اگر قصد استفاده از SSL های DV و OV دارید و سایت شما به گونه‌ای است که چند ساب دامین دارید حتما باید SSL از نوع WildCard خریداری کنید که امکان استفاده در ساب دامین را داشته باشید.
🖌 در صورت استفاده از SSL EV لازم است مدارک سازمانی و اطلاعات پاسپورت خود را ارسال کنید تا بررسی شده و پس از تایید امکان استفاده از SSL با نام سایت را داشته باشید.
🖌 هنگام خرید گواهینامه امنیتی OV و EV مراحلی که باید از زمان ارسال سفارش، تایید و نصب را طی کنید ممکن است تا 15 روز کاری زمان‌بر باشد.
🖌 برخی شرکت‌ها نصب SSL را به صورت رایگان و با شرایط خاصی بر روی هاست شما نصب می‌کنند. بنابراین اگر دانش فنی لازم برای نحوه نصب SSL در هاست را ندارید باید هزینه‌ای جدا بابت نصب آن پرداخت کنید.
عباس صادقی

@ABlueDeveloper
تعداد خط کد نوشته شده برای #NodeJs #Android

@ABlueDeveloper
#CSharp
#CSharp8
🌐🌐🌐 ویژگی های جدید C# 8.0 (قسمت اول)

سی شارپ 8.0 نسخه اصلی C# میباشد . حتی با وجود اینکه تازه C# 7.0 7.1 7.2 7.3 منتشر شده و و هنوز از قابلیت های جدید آن هیجان زده هستیم.

برنامه فعلی بدین صورت میباشد که همزمان با Net Core 3.0 سی شارپ 8 نیز عرضه خواهد شد. با این حال ویژگی های این نسخه جدید در نسخه پیش نمایش ویژوال استودیو 2019 در حال انجام است و میتوانید انهارو بصورت جدی شروع کنید .

هدف از این پست این است که به شما یک دید کلی از آنچه انتظار می رود را ارائه دهیم و سرانجام در مورد آن چه انتظار داریم

در اینجا یک مرور کلی از ویژگی های مهم برای C # 8.0 ارائه شده است میپردازیم :

Nullable reference types

شما را از مقدار دهی null به reference Type ها منع میکند که البته با warning ها به شما این اخطار را میدهد که باید nullable کنید متغیر مذکور را.
string s = null; // Warning: Assignment of null to non-nullable reference type
برای این کار شما باید از Nullable reference type استفاده کنید
string? s = null; // Ok

بنابراین زمانی که از nullable reference type استفاده میکنید باید چک کنید که null نباشد :
void M(string? s)
{
Console.WriteLine(s.Length); // Warning: Possible null reference exception
if (s != null)
{
Console.WriteLine(s.Length); // Ok: You won't get here if s is null
}
}
Async streams

ویژگی های Async/await از سی شارپ نسخه 5.0 اضافه شد و به شما اجازه میدهد results را بصورت Asynchronous در کد استفاده کنید بدون callback
async Task<int> GetBigResultAsync()
{
var result = await GetResultAsync();
if (result > 20) return result;
else return -1;
}
البته زمانی که میخواهیم داده هایی را بگیریم (یا تولید کنیم) که یک جریان مداوم هستند (continuous stream results) مثل زمانی که شما میخوای از دستگاه IoT دیتا بگیرید و یا از Cloud Service ، Async Stream ها برای این دیتا ها استفاده میشوند که اینترفیس جنریکی معرفی شده بنام <IAsyncEnumerable<T که در واقع async شده ی <IEnumerable<Tمی باشد و دقیقا اون چیزی است که شما نیاز دارید و زبان به شما اجازه میدهد که await رو روی foreach داشته باشید و داده هارا رو yield برگردانید و یا استفاده کنید

async IAsyncEnumerable<int> GetBigResultsAsync()
{
await foreach (var result in GetResultsAsync())
{
if (result > 20) yield return result;
}
}

@ABlueDeveloper
#CSharp
#CSharp8
🌐🌐🌐 ویژگی های جدید C# 8.0 (قسمت دوم)
لینک قسمت اول : https://www.tgoop.com/ABlueDeveloper/278
Ranges and indices
اضافه شدن نوع Index برای زمانی که نیاز به ایندکس گذاری دارید ، شما میتونید از این نوع تایپ استفاده کنید و بصورت Int مقدار دهی کنید و یا قبل مقدار int از ^ استفاده کنید برای گرفتن مقدار ایندکس از اخر (prefix) . در واقع از این به بعد هرجا نیاز دارین که از کالکشنی با index ، value آن ایتم را بگیرید ، ویرایش یا پر کنید از index باید استفاده کنید.

Index i1 = 3;  // number 3 from beginning
Index i2 = ^4; // number 4 from end
int[] a = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
Console.WriteLine($"{a[i1]}, {a[i2]}"); // "3, 6"

همچنین یک نوع محدوده معرفی شده که شامل دو Index است، یکی برای شروع و یک برای پایان، و می تواند با یک عبارت x..y نوشته شود.با توجه به مثال قبل به مثال زیر توجه کنید:
var slice = a[i1..i2]; // { 3, 4, 5 }

Default implementations of interface members

در حال حاضر هنگامی که یک Interface را نوشتید و استفاده میکنید ،دیگر نمی توانید Member به آن را اضافه کنید بدون اینکه کلاسهایی که استفاده کردند تغییری ندهند.
در C # 8.0 به شما اجازه داده میشود در واقع یه Member رو Overload کنید . حالا دیگر تمام کلاس هایی که این interface را impelement کردند نیازی نیست حتما definition اون member رو بنویسند و از همون default impelementation که قبلا بود استفاده میکنند . به مثال زیر توجه کنید :

 interface ILogger
{
void Log(LogLevel level, string message);
void Log(Exception ex) => Log(LogLevel.Error, ex.ToString()); // New overload
}

class ConsoleLogger : ILogger
{
public void Log(LogLevel level, string message) { ... }
// Log(Exception) gets default implementation
}

کلاس ConsoleLogger نیازی به پیاده سازی Log (Exception) از ILogger نیست، زیرا متد با اجرای پیش فرض اعلام شده است.

حالا شما میتوانید Members های جدید رو به interface هاتون با خیال راحت با default implementation اضافه کنید بدون اینکه نیاز باشه تو هر جایی که از این interface استفاده کردید تغییری ایجاد کنید.




@ABlueDeveloper
This media is not supported in your browser
VIEW IN TELEGRAM
#react
#d3
#dataviz

کتابخانه nivo فراهم می کند مجموعه غنی از کامپوننت های dataviz، کتابخانه های عالی برای D3 و Reactjs ساخته شده است.
📌 لینک سایت:
http://nivo.rocks

@ABlueDeveloper
Forwarded from اتچ بات
#hmvc
#HierarchicalModelViewController

💠 معماری hmvc چیست ؟
اگر شما هم یکی از افرادی هستید که با معماری mvc کارمیکنید به احتمال زیاد تا به حال نام معماری hmvc را هم شنیده اید

معماری hmvc در واقع به مخفف Hierarchical Model View Controller گفته میشود این معماری mvc سلسله مراتبی نامیده می شود و یک الگوی معماری است که می تواند به خوبی برای سایت های ماژولار استفاده شود

در مسیر یابی عادی mvc یک آدرس url درخواستی را انجام میدهد که یک کنترلر بر اساس کدنویسی انجام شده ارتباط با دیتابیس و ویو و پردازش های لازم را انجام داده و سپس به view برای رندر، منتقل می شود.

این کار به خوبی برای برنامه های عادی و کوچک کار می کند ، اما هنگامی که برنامه شما از نظر پیچیدگی رشد می کند، شما نیاز به کنترلر های بیشتری خواهید داشت .


درواقع در hmvc ما برای هر بخش مجزایی که داریم یک mvc کامل خواهیم داشت که به صورت مستقل کار خواهد کرد . برای مثال ما پوشه ای به نام panel داریم که بخش هایی درون آن خود دارای ساختار کلی کد ایگنایتر هست و پوشه های controllers - models - views - config و غیره را دارد و همیشه اول از این بخش استفاده میشود.


@ABlueDeveloper
#ONNX
یه پروژه جذاب جاواسکریپتی به اسم
onnxjs
واسه اجرا کردن مدل‌های
ONNX
روی مرورگر (Browser) با استفاده از
WebAssembly و WebGL
که بتونه از قدرت
GPU
در سمت کلاینت استفاده کنه.

هوش مصنوعی دیگه از آنچه شما فکر می‌کنید به شما نزدیک‌تر است!

https://github.com/Microsoft/onnxjs


@ABlueDeveloper
This media is not supported in your browser
VIEW IN TELEGRAM
#dotnetcore
#WPF
#Core3
امکان ساخت برنامه‌های Desktop اپلیکیشن بر اساس Net Core. در حال فراهم شدنه.
توی این ویدیو می‌تونید مراحل ساخت یک پروژه WPF رو بر اساس Net Core 3.0. ببنید.
@ABlueDeveloper
2025/07/14 19:32:41
Back to Top
HTML Embed Code: