راه اندازی MacBook برای برنامه نویسی

قبلا چند نوشته ای برای سفارشی سازی Ubuntu به عنوان محیط توسعه جدید نوشته بودم که استقبال خوبی هم شده بود. اخیرا استفاده از Macbook به خاطر پرفورمنس فوق العاده پردازنده های سری M به عنوان محیط توسعه در ایران بیشتر شده و خوب جای خالی یک راهنمای کاربردی برای شروع حس میشه. البته فرض میکنم که تنظیمات اولیه مثل ساخت user و اتصال به WIFI و وارد شدن به appleID فعال کردن FindMy و FileVault و ... را انجام دادید.

از آخرین نوشته ام در ویرگول چند سالی میگذره و احتمالا این هم آخرینش باشه، ولی میتونین من را در medium دنبال کنید چون معمولا اونجا مینویسم.

محیط گرافیکی و ابزارها

فرض را بر این میگذارم که از محیط ویندوز مهاجرت میکنید. پس بهتره با تغییرات ظاهری محیط جدید آشنا بشیم:


نوار بالای صفحه یا Menu Bar

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


مرکز کنترل (Control Center)

برای دسترسی سریع به تنظیماتی مانند روشنایی صفحه، حالت هواپیما، وایفای و بلوتوث، کافی است روی نماد مرکز کنترل در نوار منو سمت چپ کلیک کنید.

مرکز اعلانها (Notification Center)

تمام اعلانهای برنامهها و هشدارهای سیستم در مرکز اعلانها نمایش داده میشوند که با کلیک روی ساعت/تاریخ باز میشود.


نوار پایین صفحه یا The Dock

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

نوار سرچ یا (Spotlight)

اسپاتلایت یک ابزار جستجوی قدرتمند است که با فشردن کلیدهای Command+Space فعال میشود. میتوانید در فایلها، برنامهها، تنظیمات سیستم و اینترنت جستجو کنید.

دستیار صوتی اپل یا Siri

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

برنامه ها

برای دسترسی به اپلیکیشنهای نصب شده خود باید وارد پوشه Applications در Finder شوید یا Launchpad را در dock باز کنید. اکثر برنامه های macOS برعکس ویندوز فقط دارای یک آیکون هستند و همراه با پوشه های مختلف نیستند. برای باز کردن برنامه ها کافیست به روی آنها کلیک کنید.

فایندر (Finder)

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

  • برای move کردن باید مشابه کپی عمل کنید و در هنگام paste کلید Option را هم نگه دارید. یعنی اول فایلها را انتخاب کرده و ⌘C بعد در مکانی که میخواهید فایلها را منتقل کنید ⌘⌥V
  • برای نمایش فایلهای مخفی کلید های Shift + ⌘ + . را بزنید.
  • برای حذف یک فایل یا دایرکتوری آن را انتخاب و کلیدهای Command + Delete را بزنید.


مدیریت برنامه ها یا Activity Monitor

مشابه Task Manager در ویندوز Activity Monitor در مک وجود دارد.. برای دسترسی به این بخش کافیست مسیر Applications > Utilities را بروید و یا عبارت Activity Monitor را در Spotlight جستجو کنید.


تنظیمات کاربردی

کلیک راست

در مک بوکهای قدیمی تر کلیک راست وجود نداشت و برای استفاده از این قابلیت مجبور بودید که Ctrl را نگه دارید و از طریق کلیک چپ موس همان عمل کلیک راست را انجام دهید. البته در حال حاضر کلیک راست به مک بوک اضافه شده و دیگر نیازی به انجام این کار نیست. اگر magic mouse دارید، کلیک راست در ابتدا فعال نیست و باید در تنظیمات mouse آنرا فعال کنید.


ژستهای حرکتی ترکپد

شما از طریق این ترکپد بدون نیاز به موس با ژستهای حرکتی مختلف میتوانید دستورات مختلف را انتقال دهید، از زوم کردن گرفته تا اسکرول کردن و سوییچ کردن بین برنامه ها. برای تنظیم دقیقتر ترکپد به مسیر System Preferences > Trackpad بروید. مثلا من ترجیح میدم که tap را به عنوان کلیک در نظر بگیره که نیاز به فشار بیشتر واسه کلیک نباشه و کلیک راست هم با دو انگشت باشه.


ترفندهای کاربردی در مک بوک

کلیدها
کلیدها مشابه ویندوز است ولی ALT اینجا Option و به جای کلید Win کلید Command وجود دارد. کلید fn هم قابل تعریف برای کاربرد های مختلف است مثلا تغییر زبان یا با ترکیب F1,...ها برای کم و زیاد کردن ولوم صدا و نور و ...

  • Control
  • Option
  • Shift
  • Command
  • ⏎ Return


اسکرین شات و اسکرین ریکورد

مک بوک به صورت پیش فرض قابلیت ثبت اسکرین شات و اسکرین ریکورد را در اختیار شما قرار میدهند و فایل آنرا در Desktop ذخیره میکند.

  • با فشردن Cmd + Shift + 3 اسکرین شات از کل صفحه ثبت میشود؛
  • با فشردن Cmd + Shift + 4 از بخشی از صفحه اسکرین شات ثبت میشود؛
  • با فشردن Cmd + Shift + 4 بهعلاوه Control فایلی ذخیره نمی شود و فقط در حافظه کپی میشود؛
  • با فشردن Cmd + Shift + 4 بهعلاوه Space میتوانید بین برنامهها برای ثبت اسکرین شات جابجا شوید؛
  • فشردن Cmd + Shift + 5 باعث میشود تا برنامه اسکرین شات باز شود.


متوقف کردن برنامهها

برای Force Stop برنامه ای به دلیل باگهای نرم افزاری نمیتواند به حالت نرمال بسته شود میتوانید با فشردن دکمههای Cmd + Opt + Esc وارد یک منو شوید و آنرا ببندید. ( ویا در activity monitor آن پروسه را انتخاب و Force Stop کنید.

ابزارهای کمکی

برنامه Rectangle

متاسفانه مدیریت پنجره یکی از نقاط قوت macOS نیست و در استفاده از چند پنجره باز کنار هم اصلا خوب عمل نمیکند. خوشبختانه، یک برنامه رایگان به نام Rectangle وجود دارد که مدیریت پنجره ها را به کمک کلیدهای ترکیبی خیلی راحت میکند.

ابزارهای برنامه نویسی Xcode

مجحوعه xcode شامل یکسری ابزارهای ترمینال هستند که برای توسعه نرم افزار در macOS ضروری هستند را دانلود و نصب کند. مهمترین آنها شامل موارد زیر است:

- gcc

- g++

- make

- git

- linker

- debugger

- profiler

برای نصب آن این دستور را در ترمینال بزنید.

 xcode-select--install 


مدیریت بسته (Package Manager)

برای مدیریت بستهها در macOS، انتخاب محبوب من همچنان Homebrew است و اولویت اول من همیشه CLI است.ولی اگر شما یک رابط گرافیکی خوب برای Homebrew میخواهید Cakebrew را هم میتونید نصب کنید.

/bin/bash -c &quot$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&quot


ویرایشگر متن (Text Editor)

بیشک VS Code یکی از بهترین IDEهای موجود است و مسلما یک IDE قابل اعتماد برای برنامهنویسان ضروری است پس بریم که با Homebrew نصبش کنیم:

brew install --cask visual-studio-code

با تم مورد علاقه ام Catppuccin که چهار حالت از روشن تا تاریک دارد.

افزونههای های پیشنهادی:

  • Codeium: این افزونه مشابه GitHub Copilot اما برای کاربران فردی رایگان است.
  • Error Lens: قابلیت دید خطای "TODO" و خطاهای IDE را بهبود میبخشد و آنها را واضحتر نشان میدهد.
  • change-case. امکان تغییر سریع نام متغیر بین camelCase، snake_case و موارد دیگر را فراهم می کند.
  • filesize. نمایش اندازه فایل جاری در نوار وضعیت.
  • GitLens. ابزار کاربری برای مدیریت git.
  • indent-rainbow. تورفتگی ها را واضح تر و قابل خواندن تر می کند.
  • Prettier. فرمت کننده کد برای برخی زبان ها.
  • Sort JSON objects. نیازی به توضیح ندارد، درست است؟


ترمینال (Terminal)

در چند سال گذشته از iTerm2 استفاده میکردم به همراه تم Powerlevel10k .

brew install --cask iterm2

علاوه بر این، ZIM (Zsh IMproved) را که ادعا میکند نسبت به oh-my-zsh سریعتر است، را هم نصب کرده ام .

برای نصب ZIM

curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh

و برای نصب تم Powerlevel10k روی آن این راهنما را دنبال کنید


ابزار SDKMan

این ابزار محبوب من از سالها قبل بوده است. به کمک SDKMan به راحتی هر sdk و یا ابزارهای مشابه را میتونین نصب کنید و یا حتی چند نسخه مختلف از هر sdk روی سیستمتون داشته باشه و sdkman اونها را مدیریت میکنه و با یه کامند نسخه پیشفرض را عوض میکنه.

curl -s &quothttps://get.sdkman.io&quot | bash

و همانطوری که در تصویر زیر میبینید میتونید ورژن ها مختلف مثلا JDK را لیست کنید و هر کدام را خواستید نصب کنید.


سعی کردم مواردی که واسه همه میتونه کاربری باشه را بگم و نصب ابزارها و تنیظمات دیگه بنا به نیاز شما میتونه متفاوت باشه.