<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های سپهر گل نیای</title>
        <link>https://virgool.io/feed/@golniyay</link>
        <description>برنامه نویس C#,php,JS,ruby و swift. به همچنین مارک-آپ های HTML و CSS ، کمی هم xml. عشق UNIX و IOS و OSX.</description>
        <language>fa</language>
        <pubDate>2026-06-10 17:50:08</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/49647/avatar/xDAUvk.png?height=120&amp;width=120</url>
            <title>سپهر گل نیای</title>
            <link>https://virgool.io/@golniyay</link>
        </image>

                    <item>
                <title>وایل یا ریپیت-وایل مسأله این است</title>
                <link>https://virgool.io/@golniyay/%D9%88%D8%A7%DB%8C%D9%84-%DB%8C%D8%A7-%D8%B1%DB%8C%D9%BE%DB%8C%D8%AA-%D9%88%D8%A7%DB%8C%D9%84-%D9%85%D8%B3%D8%A3%D9%84%D9%87-%D8%A7%DB%8C%D9%86-%D8%A7%D8%B3%D8%AA-gx20jwsxqapj</link>
                <description>سوییفتاگر به control-flow (با آی پی ایران باز نمی شود) ها در سوییفت آشنایی داشته باشید ، ممکن است از خودتان بپرسید که حلقه while با حلقه repeat چه تفاوتی دارد و البته که شما خود پاسخ را نمی دانید بنابراین  ، خویشتن پرسی کار بیهوده ای است.وایلوایل ها یا وایل ساده حلقه هایی هستند که در آن ابتدا شرط بررسی و سپس فرمان اجرا خواهد شد.برای مثال:var x = 100
while x &gt; 5
{
x -= 5
print(&quot;x value is \(x)&quot;)
}ریپیت-وایلریپیت وایل ها حلقه هایی اند که کد های داخل حلقه ابتدا اجرا و سپس شرط وایل بررسی می شود.برای مثال:var x = 100
repeat
{
x -= 5
}while x &gt; 5و اما...بله همونطور که حدس زدید این دو هیچ فرقی با هم ندارند زیرا طبق سوییفت داکس repeat-while هم یکی از طیف های while است و فی الواقع repeat-while جایگزین اپلی do-while است.در واقع اگر شما بگویید:var x = 100
do
{
x -= 5
}while x &gt; 5اکس کد یا هر کامپایلر دیگری می گوید که:#error(&quot;&#039;do-while&#039; is not allowed; use &#039;repeat-while&#039; instead.&quot;)خلاصه که از آپدیت های سوییفت جا نمونید که خرابی به بار می آورد.در ضمن از swift:5 هم غافل نشید.فعلا :)</description>
                <category>سپهر گل نیای</category>
                <author>سپهر گل نیای</author>
                <pubDate>Sun, 09 Jun 2019 23:32:37 +0430</pubDate>
            </item>
                    <item>
                <title>کامپیوتر شرکت را به فنا دادم</title>
                <link>https://virgool.io/@golniyay/%DA%A9%D8%A7%D9%85%D9%BE%DB%8C%D9%88%D8%AA%D8%B1-%D8%B4%D8%B1%DA%A9%D8%AA-%D8%B1%D8%A7-%D8%A8%D9%87-%D9%81%D9%86%D8%A7-%D8%AF%D8%A7%D8%AF%D9%85-p4b3umvxosgr</link>
                <description>لینوکس یا ویندوزمدتی پیش ، متوجه شدم که نمی توانم با کامپیوتر محل کارم کنار بیایم پس یک پارتیشن درست کردم و کامپیوتر را ریبوت کردم تا فلش ubuntu 19.04 م بالا بیاید. خواستم نصبش کنم که با ارور پارتیشن مواجه شدم پس try ubuntu را زدم و در ترمینال زدم:ubuntu@ubuntu: -$ sudo gpartedبازش کردم و بعد از چند مرحله ، نوع فایل سیستم را به ext4 تغییر دادم. یا علی گفتم و رفتم برای نصب که باز هم ارور داد.با خودم گفتم که برم تو ویندوز و از اونجا یه بار دیگه فضای unallocated رو اختصاص بدم به یک درایو و بعد Shrink volume کنم.ریبوت کردم و بعله starting windows و بلو اسکرین مرگ!!پس از مدتی تلاش برای استفاره از ابزار های لینوکس و ویندوز برای درست کردنش مثل nfts-3g و cmd ویندوز ، فهمیدم که این ره که من میروم به ترکستان است.همچنین باید اضافه کنم که نمی تونستم کلا هارد رو پاک کنم چون روی ویندوز نرم افزار حسابداری نصب بود. اندیشیدم و به فکرم رسید که حالا که نمی تونم ویندوز بالا بیارم ، پس بک-آپ های نرم افزار حسابداری و می ریزم رو فلشم. پس زدم:ubuntu@ubuntu: -$ sudo ls
ubuntu@ubuntu: -$ sudo mount /dev/sda4بعد هم dban رو boot کردم و هارد پاک شد و یک ویندوز به قول کفار refresh ریختم و نرم افزار مزبور را نصب و backup را لود کردم.ایندفعه بخیر گذشت و تا رسیدم خونه برای خودم اسپند دود کردم.</description>
                <category>سپهر گل نیای</category>
                <author>سپهر گل نیای</author>
                <pubDate>Thu, 06 Jun 2019 20:54:47 +0430</pubDate>
            </item>
                    <item>
                <title>یونیکس برای همه نیست</title>
                <link>https://virgool.io/@golniyay/%DB%8C%D9%88%D9%86%DB%8C%DA%A9%D8%B3-%D8%A8%D8%B1%D8%A7%DB%8C-%D9%87%D9%85%D9%87-%D9%86%DB%8C%D8%B3%D8%AA-ft88bzvulfcr</link>
                <description>یونیکستاریخچهیونیکس نام یک سیستم عامل پایه است که توسط کن تامسون، دنیس ریچی، برایان کرنیگان، داگلاس مکیلروی مایکل لسک و جو اوسانا در آزمایشگاه های بل متعلق به AT&amp;T ایالات متحده توسعه یافت.در حقیقت سه شاخه سیستم های عامل وجود دارد:بر پایه یونیکسبر پایه داسآزادالبته شاخه سوم را عموماً سیستم های عامل ابتدایی تشکیل می دهند که حتی خود شما هم با کمی تسلط به خانواده سی و شرط نصب Visual Studio می توانید یکی از آنها را بنویسید.دو شاخه دیگر ، مانند شاخه سوم ، با c نوشته شده اند.از تاریخچه داس مطلع نیستم اما یونیکس اول با Assembly و بعداً با سی مجدداً نوشته شد.سی هم فرزند دنیس ریچی است.یونیکس مادر تمام سیستم عامل های BSD است که در برکلی کالیفرنیا لایسنس شدند. اگر چه بنیاد یونیکس آنها را تائید نمی کند اما هسته آنها بر پایه یونیکس است.حتی OSX هم از یونیکس برخاسته است.داس اولین نسخه و مادر هسته ویندوز ان تی است. داس بر خلاف یونیکس closed source است.چند وقت قبل مقاله ای دیدم با عنوان «چرا بچه ها باید با لینوکس کار کنند» و وحشت کردم. من هنوز گندی که به کامپیوتر شرکت زدم را فراموش نمی کنم. و دلیلی برای آموزش آن به بچه ها نمی بینم.یکی از دلایلی که برنامه نویسان فکر می کنند یونیکس خیلی ساده است این است که مانند ویندوز ابزار های عجیب و غریب ریجستری و troubleshoot و اینها ندارد و خودتان می توانید با یک ویرایشگر متنی آن را درست کنید. موافقم اما فراموش نکنید که همه مثل ما علاقه ای به سرک کشیدن در فایل سیستم ها ندارند و استفاده از یک سیستم عامل با هسته اوپن سورس و قابل ویرایش بر روی سیستم می تواند پیامد های وحشتناکی داشته باشد.حقیقت این است که لینوکس برای اهالی تِک خیلی خیلی از ویندوز بهتر است اما ویندوز رابط گرافیکی قدرتمندی دارد که برای افراد غیر حرفه ای نیز مناسب باشد. ولی من هنوز معتقدم که کامند پرامپت ویندوز در مقابل بش ترمینال یونیکس مانند یک قاشق در برابر یک بیل مکانیکی است!«یونیکس خیلی ساده است. آنقدر ساده که برای درک سادگیش نیاز دارید که نابغه باشید.»</description>
                <category>سپهر گل نیای</category>
                <author>سپهر گل نیای</author>
                <pubDate>Thu, 06 Jun 2019 20:21:32 +0430</pubDate>
            </item>
            </channel>
</rss>