یوشا آل ایوب

وبگاه دست نوشته ها و تجربیات شخصی
!بِسمِ اللّه‏ِ الرَّحمنِ الرَّحيمِ

یوشا آل ایوب

وبگاه دست نوشته ها و تجربیات شخصی

یوشا آل ایوب
تبلیغات
Blog.ir بلاگ، رسانه متخصصین و اهل قلم، استفاده آسان از امکانات وبلاگ نویسی حرفه‌ای، در محیطی نوین، امن و پایدار bayanbox.ir صندوق بیان - تجربه‌ای متفاوت در نشر و نگهداری فایل‌ها، ۳ گیگا بایت فضای پیشرفته رایگان Bayan.ir - بیان، پیشرو در فناوری‌های فضای مجازی ایران

همونطور که می دونید برنامه Git برای کار با repository، پنج پروتکل در اختیار ما گذاشته که هرکدوم مزایا و معایب خودشونو دارن. این پروتکل ها:

1- File (یا همون Local protocol)

2- HTTP (یا همون Dumb protocol)

3- HTTPS (یا همون Smart protocol)

4- SSh

5- Git

هستند. اما از کدوم پروتکل باید استفاده کنیم؟ کدوم پروتکل امنیت بیشتری داره؟ و کدوم پروتکل سرعت بیشتری داره؟

پس وارد جزئیات میشیم!

۱ نظر ۹۵/۰۳/۰۹
یوشا آل ایوب

واقاً نصب ویندوز چیزی نیست که نیاز به صحبت داشته باشه (مایه خجالته lol)، بطوری که بغال سر کوچتون هم بلده انجام بده... ولی این داستانی که می خوام بگم متفاوته!

 

یه چند سالیه که دیگه نصب ویندوز همگانی شده، بطوری هر کاربر ساده کامپیوتر هم بلده نصبش کنه...

خب خوبه که ایران داره همدان میشه و مردم همچیزدان

با این وضعیتی هم که [بیشتر] تکنسین های کامپیوتر در پیش گرفتن و وضعیتی که شرکت های فروش لپ تاپ و PC دارن (با اون کارشناسان صفر کیلومترشون)، پس انتظار همچین چیزایی رو هم باید داشته باشید:

 

حالا انتظار چی؟

1- روی سیستمتون که 1 گیگ رم داره، ویندوز نسخه 64 بیتی نصب می کنن!

2- روی سیستمتون که x64 هه و 4-8 گیگ رم داره، ویندوز نسخه 32 بیتی نصب می کنن!

3- روی سیستمتون که 4 هسته ایه با 8 گیگ رم، ویندوز نسخه HOME نصب می کنن!

4- روی سیستمتون که XP رو هم بزور می کشه، ویندوز نسخه سون professional نصب می کنن!

5- روی سیستمتون که x64 هه، ویندوز XP نصب می کنن! بعدشم میگن 64 بیتیه! 2017 هه! مایکروسافت شبانه دادش بیرون (@.@)

6- وقتی هم که نسخه درست رو روی سیستم مناسب نصب می کنن(50/50)، از داخل همون Installer/Setup همه درایوهاتون رو پارتیشن بندی می کنن، اونم همش از نوع primary! حتی برای درایو های data.

حالا بعداً اگر صاحب سیستم بخواد یه OS دیگه هم نصب کنه، باید گریه اش دربیاد تا دیتا های چندین ساله رو جا به جا کنه یا تهش از برنامه های 3rd پارتیشن بندی استفاده کنه که آخرشوم ترکون میزنن به اطلاعاتش...

7- باز هم اگر نسخه درست رو روی سیستم مناسب نصب کنن، از یه هارد 500 گیگی یا 1 ترابایتی فقط 1 درایو در میارن!

فکر کردن اینجا خارجه و multi-user و همه چیز بروزه و اورجیناله! همچنین امنیت و کیفیت نرم افزارها هم 100% هه!

8- باز هم اگر همه چیز رو درست نصب کنن، از یه هارد 500 گیگی یا 1 ترابایتی فقط 2 درایو در میارن! بعدش هم درایو سیستمشو 900 گیگ می کنن، درایو data ش رو 100 گیگ!

9- باز هم اگر همه چیز رو درست نصب کنن، پارتیشن بندیش رو هم درست انجام بدن(فکر کن 1%)، بعدش یه مشت برنامه های کاربردی چیپ! trial! و سنگین! هم روی ویندوزتون نصب می کنن.

برنامه هایی مثل Trillian anti virus(چیزی که نمایندگی سونی ایران نصب میکنه)، نورتون بهمراه اراجیفش CyberLink PowerDVD، Akbar's Firewall، Somayeh PDF Khaan و...

 

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

 

در هر صورت، نصب ویندوز چیزی نیست که نیاز به آموزش داشته باشه، ولی اگر همینطور پیش برن قول میدم دولت یه سمینار واسه "نکات و اصول مهم در نصب ویندوز" براشون راه میندازه...

۲ نظر ۹۵/۰۲/۰۳
یوشا آل ایوب

در ادامه مقاله قبلیم که شماره یک "نکات و اصول مهم در برنامه نویسی Java/Android" بود، در این مقاله شماره دو همین موضوع رو ارائه میدم. منتها کمی پیشرفته تر...

 

1- طبق گفته Sun، از دستورات System.runFinalizersOnExit() و Runtime.runFinalizersOnExit() استفاده نکنید، اینها منسوخ و Unsafe اعلام شدن:

JAVA-DOC: Because it is inherently unsafe. It may result in finalizers being called on live objects while other threads are concurrently manipulating those objects, resulting in erratic behavior or deadlock. While this problem could be prevented if the class whose objects are being finalized were coded to "defend against" this call, most programmers do not defend against it. They assume that an object is dead at the time that its finalizer is called.
Further, the call is not "thread-safe" in the sense that it sets a VM-global flag. This forces every class with a finalizer to defend against the finalization of live objects!
Joshua BlochNever call System.runFinalizersOnExit or Runtime.runFinalizersOnExit for any reason: they are among the most dangerous methods in the Java libraries.

 

2- Handler یا Timer؟ (در شرایط کاربری یکسان)

Handler: براحتی reschedule میشه، هر اینترفیس Runnable ای رو میشه داخلش attach کرد، حافظه کمتری رو مصرف می کنه، بهترین گزینه برای update های UI هستش، از Multi-threading پشتیبانی می کنه، استثناهای پرتاب شده از task ها و thread هارو هندل میکنه، در ساخت Thread میشه Handler اون thread رو هم باهاش طراحی کرد، زمانی که دستگاه به حالت sleep بره کماکان به کارش ادامه میده!

Timer: قابلیت reschedule شدن نداره، فقط یک TimerTask رو میشه داخلش attach کرد، حافظه بیشتری رو اشغال میکنه، بهترین گزینه برای background-task ها هستش، نمی تونه UI رو update کنه، فقط با یک Thread کار میکنه(بقیه task ها باید queue بمونن تا کار اولی تموم بشه)، استثناهای task و thread رو هندل نمی کنه و فقط نابودشون میکنه(دیگر task ها رو هم اجرا نخواهد کرد)، زمانی که دستگاه به حالت sleep بره متوقف میشه.

۰ نظر ۹۵/۰۱/۰۸
یوشا آل ایوب

سال نـو مـبـارک!  heart

 

 

۹۵/۰۱/۰۱
یوشا آل ایوب
<?php

switch (1)
{
    case 1:
        $var = 'Test';
        echo ' in case 1 ';
    break;

    case 2:
        if (isset($var)) echo '($var is set)';
        echo ' in case 2 ';
    break;

    case 3:
        echo ' in case 3 ';
    break;
}
// Result: in case 1

switch (1)
{
    case 1:
    {
        $var = 'Test';
        echo ' in case 1 ';
    }

    case 2:
        if (isset($var)) echo '($var is set)';
        echo ' in case 2 ';
    break;

    case 3:
        if (isset($var)) echo '($var is set)';
        echo ' in case 3 ';
    break;
}
// Result:  in case 1 ($var is set) in case 2

switch (1)
{
    case 1:
        $var = 'Test';
        echo ' in case 1 ';

    case 2:
        if (isset($var)) echo '($var is set)';
        echo ' in case 2 ';
    break;

    case 3:
        if (isset($var)) echo '($var is set)';
        echo ' in case 3 ';
    break;
}
// Result:  in case 1 ($var is set) in case 2

switch (1)
{
    case 1:
        $var = 'Test';
        echo ' in case 1 ';

    case 2:
    {
        if (isset($var)) echo '($var is set)';
        echo ' in case 2 ';
    }

    case 3:
        if (isset($var)) echo '($var is set)';
        echo ' in case 3 ';
    break;
}
// Result:  in case 1 ($var is set) in case 2 ($var is set) in case 3

در PHP، ظاهراً بودن یا نبودن اون گیومه ها {} هیچ تاثیری نداره، در حالی که در بیشتر زبانها (مثل java, pawn, c++ و...) می تونه حوزه/scope متغیر ها رو داخل هر case تعیین کنه...

توضیح رسمی C99 درباره دستور Switch:

CASE: Case statements are only 'labels'. This means the compiler will interpret this as a JUMP DIRECTLY to the label.
BREAK: A break statement terminates execution of the smallest enclosing switch or iteration statement.

البته این یه نکته ریزه که هنوز خیلی از برنامه نویس ها ازش مطلع نیستن!
من هم بعد از 1-2 ساعت تحقیق متوجه این قابلیت شدم، چراکه مستندات خودشون هم به این نکته اشاره نکردن. (تا جایی که گشتم)

۰ نظر ۹۴/۱۲/۱۸
یوشا آل ایوب

اینها چیزی نیستند جز software bundle! که توسط شرکت ها و گروه های نرم افزاری برای یک هدف جمع آوری شدن. و اون هم فراهم کردن بستری سریع و آسون برای برنامه نویسی.

۱ نظر ۹۴/۱۱/۲۱
یوشا آل ایوب

6 تصویر wallpaper قشنگ برای لینوکس Slackware:
 

                    

۱ نظر ۹۴/۱۰/۱۸
یوشا آل ایوب

۰ نظر ۹۴/۰۹/۰۶
یوشا آل ایوب

ما در این سرزمین از وجود سه نعمت برخورداریم: وجدان بیدار، آزادی بیان و احتیاط لازم برای اینکه از دوتای اول هرگز استفاده نکنیم!

مارک تواین

۰ نظر ۹۴/۰۸/۱۲
یوشا آل ایوب

همین که به نظاره تن پرداخته شد، کمال یافت، بارها انجام گرفت، عادت شد، بنیادش شد، پایگاهی استوار یافت، نیرومند و کامل شد او باید چشم به راه ده نعمت باشد:

او به ترس و نگرانی غلبه می یابد، نمی گذارد که آن دو به او چیره شوند. چون نمایان شود، آنرا به فرمان در می آورد.

او به خوشی و ناخوشی چیرگی یافته است. نمی گذارد که آن دو به او چیره شوند. چون نمایان شود، آنرا به فرمان در می آورد.

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

او شاید از چهار دیانه که دل را پاک می دارند و حتی اینجا(در این جهان) نیک بختی می آورند، هرگاه که بخواهد بی دشواری، بی کوشش بهره مند می شود.

او شاید از "نیروی جادوی" بهره مند گردد.

او شاید با "گوش آسمانی" پاک و برتر از انسانی، شاید از هر دو گونه صدای آسمانی و زمینی، دور و نزدیک بهره مند شود.

او شاید در دل دارای "بینش به دل های باشندگان دیگر" و دیگران شود.

او شاید در دل دارای "یاد آوری تولدهای پیشین بسیار" شود.

او شاید، با "زدودن آلودگی ها"، حتی در این زندگی خود به آزادی دل پاک و آزادی شناسی برسد.

او شاید با "چشم آسمانی" پاک، چشم برتر از انسانی، باشندگان را ببیند که ناپیدا و باز پیدا می شوند، پست و نجیب، زشت و زیبا، نیک بخت و سیاه بخت، او شاید دریابد که چگونه باشندگان برطبق کردارهایشان دوباره زاییده می شوند.

آن رهرو، اکنون اَرهَت است.

 

سخن بودا/نیانه تی لوکا

۱ نظر ۹۴/۰۷/۲۱
یوشا آل ایوب