Skip to main content

Xcode vs Visual Studio - Mostly Used Feature Comparison

In this post, I will try demonstrate mostly used menus and functions of the most famous two Integrated Development Environments (IDE) of Microsoft and Apple... namely Visual Studio and Xcode respectively. Versions of the IDEs used in this post is Microsoft Visual Studio 2015 and Xcode 8.2.1. What you will find here is mostly used features like Auto Indent, Comment out, Uncomment, Debugging shortcuts, Attaching to a process etc. in a comparative manner. In other words, these features are demonstrated by using both Xcode and Visual Studio one by one.

If you have already been using one of these IDEs, you will switch and adapt to the other IDE easily thanks to this article.





1- Auto Indent

Xcode:
  • Select the text
  • Right click on the selected text
  • Click on "Structure -> Re-Indent". (Control + I)



VS:

  • Select the text
  • Click on "Edit -> Advanced -> Format Selection"




  • If you want to Auto-Indent all document (not only small portion of it), click on "Edit -> Advanced -> Format Document"




2- Comment out

Xcode:


  • Select the text
  • Click from the top menu "Editor -> Structure -> Comment Selection"





VS:

  • Select the code portion to be commented out
  • [Using toolbar icon] Click on the shown button on toolbar as shown in the below figure




OR!!
  • [Using menu options] "Edit -> Advanced -> Comment Selection"










3- Uncomment Selected Lines

XCode:
  • Select the code portion to be uncommented out
  • Click on "Editor -> Structure -> Uncomment Selection"





VS:


  • Select the code portion to be uncommented out
  • [Using toolbar icon] Click on the shown button on toolbar as shown in the below figure



  • [Using menu options] Click on "Edit -> Advanced -> Uncomment Selection"









4- Go to Definition of a Variable/Function/Property

Xcode:

Right click on the variable/function/property and click on "Jump to Definition" in the menu.



VS:

Right click on the variable/function/property and click on "Go to Definition" in the menu.









5- Navigating Back and Forward between documents

Xcode:

Use highlighted navigation buttons (left and right arrows) to navigate in files back and forward.




VS:

Use highlighted navigation buttons (left and right arrows) to navigate in files back and forward.






6- Run

Xcode:

  • [Using menu options] "Product -> Run




  • [Using toolbar icon]   Click on the highlighted button.






VS:

  • [Using menu options] "Debug -> Start Debugging"




  • [Using toolbar icon] Click on the highlighted button "Start







7- Debugging Shortcuts

Xcode:

  • Start Debugging (Run): Command + R
  • Step Over: F6
  • Step Into: F7
  • Step Out: F8
  • Toggle breakpoint: Command + \
  • Build: Command + B



VS:

  • Start Debugging : F5
  • Step Over: F10
  • Step Into: F11
  • Step Out: 
  • Toggle breakpoint: F9
  • Build Solution: F6



8- Attaching to a Process

Xcode:
  • Click on "Debug -> Attach to Process
  • Select the process that you want to attach. 





VS:
  • Click on "Debug -> Attach to Process..."
  • Select the process you want to attach and then click to "Attach"







Comments

Popular posts from this blog

How to Fill out a Cheque?

In this post, I will demonstrate how to fill out a cheque properly. You can have a cheque book either from your bank or any store. If you find these two suggestions expensive, you could also design and print out your own cheque. In Figure 1, a sample cheque is displayed and in Figure 2, some regions of the sample cheque are highlighted. Figure 1: Sample unfilled cheque. Figure 2: Some regions are highlighted in sample cheque. 1- Name and Address of Payer: Name and  address of the person who is the owner of this cheque and is filling out the cheque should be written in this region. 2- Date: For any official document, date is a mandatory field and hence you should write current date in this region. 3- Payee Name: Payee could be either a person or an organization (Store, Restaurant, Company, School etc.) You should write the name of the payee here explicitly. 4- Amount of Payment (Numeric): Exact amount of the payment should ...

ESP8266 Mini Project: GPIO with Button and LEDs

In this post, I'll be sharing a mini project of mine, again using ESP 8266 NodeMCU chip and MicroPython. This project mainly focuses on GPIO pins and methods for this chip. LEDs will be my output and I'll use a button as an Input. My input button will be used as a Start/Stop command for ongoing operation. Ongoing operation will be blinking of LEDs with varying frequency. I'll implement this project in two different methods: Using Asynchronous Polling Using Interrupt Request Setting Up Circuitry GPIO 16, GPIO 5, GPIO 4, GPIO 0, GPIO 2, GPIO 14 pins will be configured as Output pins being pin_D0, pin_D1, pin_D2, pin_D3, pin_D4, pin_D5 respectively. GPIO 12 will be configured as Input pin and will be connected to a small button circuitry. Button simply behaves as a switch and default position is OPEN (no contact between side pins). By default, logic LOW (0) is applied to input pin, when button is pressed (switch is closed) logic HIGH...

Mobile App Review: Amnesty SOS

A. INTRODUCTION In this post, I will review Amnesty International's mobile app for you on both Android and iOS platforms. Amnesty International has already been doing its own part for years successfully to: Stop violation of human rights  Protect people and communities who are in immediate danger Now it is your turn to do your part and  Join this great community by taking actions for human rights Speak out for people facing with unlawful, inhumane treatment Encourage friends and family to raise their voices for human rights Collect more signatures and amplify your impact  Share on social media Figure : Amnesty SOS App on Google Play Store Figure : Amnesty SOS App on iOS App Store Android App details are as follows: Version : 1.1 Released on : Feb 20, 2018 Developer e-mail : digitalcomms@amnesty.ca iOS App details are as follows: Version : 1.1.1 Released on : April 2017 Developer e-mail : digitalcomms@amnesty.ca B. ...