چالش اعداد باینری در MySQL

فرض کنید پایگاه‌داده‌ای داریم که در آن جدولی برای نگه‌داری اطلاعات مربوط به جلسات یک انجمن نگهداری می‌شود. ساختار جدول جلسات یا meetings بدین شکل است: ستون days_of_week نشان می‌دهد که یک جلسه در چه روزهایی از هفته برگزار می‌شود؛ برای تشخیص روزهای برگزاری یک جلسه، باید days_of_week را به صورت یک عدد باینری درآوریم و ۷ بیت اول این عدد را معادل ۷ روز هفته در نظر بگیریم. مثلا اگر مقدار »

معماری تمیز؛ ترجیح یا ضرورت؟

اندکی بعد از این‌که به دنیای برنامه‌نویسی وارد شدم، صدایی را در درونم احساس کردم که همواره مرا به «تمیز و مرتب بودن» دعوت می‌کرد. برای این‌که این ندای درونی را بی‌پاسخ نگذارم، سعی می‌کردم در انتخاب نام متغیرها وسواس به خرج دهم ۱. اما بعد از مدتی متوجه شدم که این همهٔ آن چیزی نیست که آن ندای درونی از من درخواست می‌کند! در قدم بعد، سعی کردم از قدرت شیءگرایی بیش‌تر »

مقدمه‌ای بر Gradle از نگاه یک توسعه‌دهنده اندروید

اندروید استودیو به گونه‌ای طراحی شده که بدون آشنایی با gradle هم می‌توان به توسعه برنامه‌های اندرویدی پرداخت. بااین‌حال، یک آشنایی اولیه می‌تواند امکانات متعددی را پیش روی ما قرار دهد. در این نوشته قصد دارم از نگاه یک توسعه‌دهندهٔ اندروید، توضیحاتی را در مورد Gradle ارائه کنم. Gradle چیست؟ هنگام توسعهٔ یک برنامه، کارهایی هستند که بارها و بارها تکرار می‌شوند. مثلاً برای به اجرا درآوردن کدهای جاوا، لازم است ابتدا آن‌ »

شروع کار با Dagger

در نوشته قبل فریمورک Dagger را معرفی کردم و دربارۀ فواید استفاده از آن اندکی توضیح دادم. اگر آن مطلب را نخوانده‌اید، توصیه می‌کنم ابتدا آن را مطالعه کنید و بعد به همین نوشته برگردید. اجزاء Dagger همان‌طور که در مطلب «آشنایی با Dagger» اشاره کردم، در «تزریق وابستگی» ما قصد داریم نیازمندی‌های یک کلاس را برآورده کنیم. کلاس Phone را به عنوان یک کلاس وابسته در نظر بگیرید؛ برای تزریق وابستگی Dagger باید بداند: ۱. کلاس »

آشنایی با Dagger

چند هفته قبل، بالاخره تصمیم گرفتم که در یک پروژه واقعی، از Dagger 2 استفاده کنم. با توجه به این‌که من به طور معمول در برابر وسوسه استفاده از کتاب‌خانه‌ها و فریمورک‌ها مقاومت می‌کنم، این مورد خاص را می‌توانم یک استثنا بنامم. تجربه شخصی من در این زمینه، بسیار مثبت بود. به همین دلیل تصمیم گرفتم درباره آن‌چه آموختم، مطلبی بنویسم. Dagger چیست؟ اگر با مفهوم تزریق وابستگی یا Dependency Injection آشنایی دارید، »