<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های فرزند دلیل</title>
        <link>https://virgool.io/feed/@farzand_dalil</link>
        <description>برنامه نویسِ اندروید</description>
        <language>fa</language>
        <pubDate>2026-06-10 12:58:24</pubDate>
        <image>
            <url>https://static.virgool.io/images/default-avatar.jpg</url>
            <title>فرزند دلیل</title>
            <link>https://virgool.io/@farzand_dalil</link>
        </image>

                    <item>
                <title>داشبورد های اطلاعاتی‌؛ نیازی جدید</title>
                <link>https://virgool.io/@farzand_dalil/data-dashboards-d5a1rc9svtiz</link>
                <description>طرح کلی از یک داشبورد اطلاعاتی (data dashboard)مخاطبین این مقالهمخاطبین این مقاله افرادی هستند که در دنیای تکنولوژی، علوم کامپیوتری، تجارت، مدیریت و آمار سر رشته دارند.مقدمهافرادی که توی زمینه هایی که بالاتر اشاره کردیم ، سابقه ی پژوهش و یا کاری دارن با پنل ها و داشبورد های مدیریتی آشنا هستن. (به احتمال خیلی زیاد!)توی دنیای امروز که داده ها ارزششون بیشتر از هر زمان دیگه ای روشن شده، توانایی استفاده ی دقیق و پر بهره از اونها یکی از دغدغه های هر کسب و کار و یا سازمانی هستش که میخواد با مدیریت بهتر به سمت رسیدن به اهدافش حرکت کنه.همونطور که بخشی از مقاله ی مشهور مجله ی Forbes  اشاره میکنه (لینک کامل مقاله) :Data is the new oil.داده ها نقش اساسی و حیاتی توی دنیای امروز ایفا میکنن. نقش اونها تشبیه به نقش نفت خام میشه! همونقدر اساسی و مهم.همه ی سازمان ها و شرکت ها توی زمینه های مختلف، داده های گوناگونی دارن. از اطلاعات کارمند هاشون گرفته تا میزان فروش شون ، مشتری هاشون ، هزینه هاشون و ...تمامی این داده ها ارزشمند هستن. تمامی این داده ها امکان این رو به سازمان ها و کسب و کار ها میدن تا این تشکیلات ها بتونن خودشون رو بهبود بدن. البته اگر اونها نحوه ی استفاده ی صحیح از داده ها رو پیش بگیرن و نسبت بهش مطلع باشن.پس سوال اینجاست:کسب و کار های مختلف چطوری میتونن از داده های خودشون برای رسیدن به اهداف شون استفاده کنن؟چه ابزار هایی برای استفاده و درک داده ها وجود داره؟در ادامه به این سوال ها جواب میدیم.تحلیل داده هادر سازمان ها یک نقشی در نظر گرفته میشه به نام تحلیلگر داده. وظیفه ی تحلیلگران این هستش که از داده های خام سازمان بتونن اطلاعات ارزشمند رو استخراج کنن، به طوری که مدیران و یا صاحبان کسب و کار بتونن با توجه به اون دانشی که از داده ها به دست اومده اقدام به برنامه ریزی برای کارهای مختلف بکنن. اقداماتی که سازمان و یا کسب و کار رو به اهداف خودش نزدیک تر میکنه.تا اینجا با نقش تحلیلگر داده آشنا شدیم و متوجه شدیم که اونها دنبال محقق کردن چه هدفی هستن.داشبورد های اطلاعاتیتحلیلگران داده برای رسیدن به اهداف خودشون از ابزاری به نام داشبوردهای اطلاعاتی استفاده می‌کنند. این داشبوردها با هدف جمع‌آوری و بصری‌سازی داده‌ها طراحی شدن. به عبارت دیگر، داشبوردهای اطلاعاتی به مدیران، تحلیلگران و هر فردی که نیاز به درک و تصمیم‌گیری بر اساس داده‌ها دارد، کمک می‌کنند.داشبورد های اطلاعاتی شامل گراف ها، نمودار ها و لیست های متفاوتی از داده ها هستن. همونطور که بالاتر اشاره کردیم بصری سازی داده ها یکی از کار هایی هستش که توی داشبورد ها رقم میخوره. دلیلش هم اینه که فهم داده های کلان و آنالیز اونها با استفاده از ابزار های بصری ، کار رو برای کاربر ها بسیار ساده تر میکنه.پس داشبورد های اطلاعاتی:پنل هایی هستن که در اختیار مدیران، صاحبان کسب و کارها، تیم های تحلیلی و یا هر بخش دیگری که نیاز به فهم داده ها و تصمیم گیری بر اساس داده ها رو دارن قرار میگیره.داشبورد های اطلاعاتی یک فضای بصری (interface) رو برای کاربر ها فراهم میکنه.توی داشبورد های اطلاعاتی، با هدف ارائه ی قابل فهم داده ها، از نمودار ها و گراف های متفاوت استفاده میشه.خب تا اینجا با داشبورد های اطلاعاتی آشنا شدیم. جالبه بدونید که ۳ نوع داشبورد اطلاعاتی متفاوت داریم.انواع داشبورد های اطلاعاتیبه طور کلی ۳ نوع داشبورد اطلاعاتی داریم:داشبورد عملیاتیداشبورد استراتژیکداشبورد تحلیلیداشبورد های عملیاتیداشبورد های عملیاتی به طور کلی با هدف برنامه ریزی برای مدیریت کردن فعالیت هایی که در آینده قراره که رقم بخوره به وجود میان. توی این نوع داشبورد ها اعمال مختلف و روزانه ی سازمان ثبت و پیگیری میشن و با توجه به اون اعمال برای فعالیت هایی که در آینده انجام خواهند شد تصمیم گیری های لازم رو انجام میدن.داشبورد های استراتژیکداشبورد های استراتژیک با هدف بررسی عملکرد کلی سازمان ها با توجه به اهداف بلند مدتی که دارن به وجود میاد. توی این داشبورد ها سعی بر این هستش که عملکرد کلی بخش های مختلف بررسی و پیگیری بشه تا از نزدیک شدن به اهداف بلند مدت سازمان بشه اطمینان حاصل کرد.داشبورد های تحلیلیبرای ارائه ی یک بینش دقیق تر و عمیق تر نسبت به داده های سازمان، داشبورد های تحلیلی به وجود میان.داشبورد های تحلیلی با نگاهی جزئی تر به داده ها به دنبال امکان پیش بینی کردن و تحلیل روند ها از طریق داده ها هستن.پس داشبورد های تحلیلی، عمیق تر، جزئی تر و با اهداف متفاوت تری هستن. از جمله پیش بینی و تحلیل روند ها.ویژگی های یک داشبورد اطلاعاتی موثربه طور کلی داشبورد های اطلاعاتی برای تاثیرگذاری بالا  نیازمند به چندین ویژگی هستن: (البته هر پروژه ای میتونه نیازمندی های خاص خودش رو داشته باشه)بروزرسانی بی درنگ (real-time)طراحی کاربر پسنداستفاده از المنت های تعاملی (مثل گزینه ی فیلتر)استفاده از تکنیک های بصری سازی (visualization)مزایای استفاده از داشبورد های اطلاعاتیبحث در ارتباط با این بخش بسیار گسترده هستش اما در مجموع و با یک دیدِ کلی، داشبورد های اطلاعاتی توی زمینه های زیر کمک شایان و قابل توجهی به ما میکنن:اتخاذ تصمیم‌های قوی‌تر و مبتنی بر دادهنظارت بر عملکرد سازمانبالاتر رفتن مسئولیت پذیری بخش های مختلف سازماننتیجه گیریداده ها مثل نفت میمونن. این گزاره درست هستش اما تا زمانی که از اونها و با استفاده از روش های مختلف نتونیم «دانش» استخراج کنیم برای ما ارزشی نخواهند داشت.یکی از روش هایی که کسب و کار ها و سازمان های مختلف برای ارائه ی داده ها به شیوه ای قابل فهم استفاده میکنن، ایجاد داشبورد های اطلاعاتی هستش.داشبورد هایی که کمک بزرگی برای گرفتن تصمیم های دقیق تر و منسجم تر میکنن.امیدوارم توضیحاتی که توی این مقاله در رابطه با داشبورد های اطلاعاتی دادم براتون ارزشمند بوده باشه. اگر اینطور بود حتما با لایک کردن مقاله به دیده شدن بیشتر اون کمک کنین و اگر نقد و نظری در رابطه باهاش داشتید حتما باهام در میون بزارید.</description>
                <category>فرزند دلیل</category>
                <author>فرزند دلیل</author>
                <pubDate>Thu, 10 Oct 2024 10:35:49 +0330</pubDate>
            </item>
                    <item>
                <title>کوروتین به زبان ساده - قسمت ۱</title>
                <link>https://virgool.io/@farzand_dalil/kotlin-coroutines-nefes1dauoog</link>
                <description>Kotlin coroutinesسلام. میخوایم توی این مجموعه مقالات، کوروتین ها (coroutines) و کاربرد های اون ها رو با همدیگه یاد بگیریم.کوروتین ها (coroutines) چه موجوداتی هستن؟کوروتین ها یک ابزار هستن برای برنامه نویس های کاتلین. این ابزار قابلیت های خیلی زیادی رو نصیب ما میکنه.برای مثال، ما با استفاده کوروتین ها میتونیم یک سری کار ها رو به صورت همزمان (concurrent) انجام بدیم.یکی از مسائلی که توی برنامه نویسی داریم اینه که گاهی اوقات میخوایم یک سری کار ها رو همزمان با همدیگه انجام بدیم نه به صورت متوالی یا پشت سر هم! (حالا جلوتر این موضوع برامون روشن تر میشه که دقیقا منظورمون از متوالی چیه)کوروتین ها این کار رو برای ما میکنن. کوروتین ها این قابلیت رو به ما میدن تا بتونیم چند تا کار (task) رو همزمان انجام بدیم. پس تا اینجا متوجه شدیم که کوروتین ها چه موجوداتی هستن و برامون چیکار میکنن.چطوری میتونیم از کوروتین ها استفاده کنیم ؟اگر شما به عنوان یک برنامه نویس اندروید با زبان کاتلین مشغول به توسعه ی پروژه های خودتون هستید، برای استفاده از کوروتین نیازی به اضافه کردن هیچ کتابخونه و یا dependency خاصی ندارید.زمانی که پروژه ی اندرویدی خودتون رو ایجاد میکنید، به صورت پیش فرض کتابخونه ی appcompat به پروژه ی شما اضافه شده و کوروتین ها به عنوان بخشی از این کتابخونه در دسترس شما هستن!بنابراین به عنوان برنامه نویس اندروید برای استفاده از کوروتین ها نیازی به اضافه کردن هیچ کتابخونه ی خاصی ندارید!اما اگر یک پروژه ی کاتلینی خام ایجاد کنید ، برای استفاده از کوروتین ها باید وابستگی (dependency) مربوط به کوروتین ها رو به پروژه ی خودتون اضافه کنید.اگر پروژه ی شما از Gradle به عنوان build system استفاده میکرد، این وابستگی رو میتونید اضافه کنید :implementation(&amp;quotorg.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3&amp;quot)و اگر از Maven استفاده میکرد به این شکل باید وابستگی رو اضافه کنید :&lt;dependency&gt;
    &lt;groupId&gt;org.jetbrains.kotlinx&lt;/groupId&gt;
    &lt;artifactId&gt;kotlinx-coroutines-core&lt;/artifactId&gt;
    &lt;version&gt;1.7.3&lt;/version&gt;
&lt;/dependency&gt;با اضافه کردنِ این وابستگی به پروژه ی کاتلینی خودتون، کوروتین ها در دسترس شما خواهند بود و میتونید از اون ها توی روندِ توسعه ی خودتون استفاده کنید.نتیجه ی قسمت اولخب تا اینجا، امیدوارم که با کوروتین ها (Coroutiens) یک آشنایی نسبی ای پیدا کرده باشید.در ادامه و توی این مجموعه از مقالات، ما سعی میکنیم تا کوروتین ها رو به زبان خیلی خیلی ساده کالبد شکافی کنیم و اون رو یاد بگیریم.اگر یک برنامه نویس مبتدی هستید یا با کوروتین ها آشنایی ندارید قطعا ادامه ی این قسمت ها به دردتون خواهد خورد.توی قسمت بعدی وارد استفاده ی عملی از کوروتین ها خواهیم شد و موارد زیر رو یاد خواهیم گرفت :یک کوروتین توی کد چه شکلیه ؟ (اجزاش رو کاملا بررسی میکنیم)چطوری یک کار رو با استفاده از کوروتین میتونیم انجام بدیم و چه فایده ای برامون داره؟چطوری با کوروتین چندین کار (task) رو به شکل همزمان انجام بدیم؟توی قسمت بعدی لذت استفاده از کوروتین ها رو تجربه میکنیم =)همچنین برای درک بهتر از کاری که کوروتین ها برای ما میکنن، پیشنهاد میکنم حتما درباره ی دو مفهومِ Concurrency و Parallelism مطالعه ی کوچیکی انجام بدید.توی منابع فارسی این صفحه رو بهتون پیشنهاد میکنم : Concurrency and Parallelismاگه پیام یا نظری درباره ی این مجموعه داشتید حتما میتونید تا باهام درمیون بزارید =)</description>
                <category>فرزند دلیل</category>
                <author>فرزند دلیل</author>
                <pubDate>Fri, 22 Sep 2023 14:36:34 +0330</pubDate>
            </item>
            </channel>
</rss>