Novice to iOS APP development: do you want to write all the code or a combination of code and drag and drop?

recently, I have been studying iOS APP development. I have seen some foreign introductory books and videos, all of which are taught in the form of drag-and-drop + code. I feel that the acceptance is OK. But I asked my friends who are doing iOS developers, and they said that they only write code, not drag and drop.

would like to ask:
1. In actual projects, is it basically in the form of code-only? what are the pros and cons of writing only code and code + dragging ?
2. If you only write code, how can a novice get more hands on it? Do you have any recommended books or related materials?

Thank you!

Mar.03,2021

  1. only write code: in fact, it gives up the convenience brought by stroyboard and xib, and it won't be too slow to adapt to the layout. Basically use Masonry ,
    benefits: files occupy less space and export ipa is smaller, which is good for team cooperation. Merging the possibility of code conflicts will reduce
    disadvantages: too much code is difficult to review, complex page layout needs to repeatedly check the actual effect and the display of different devices. Time-consuming

    code + drag-and-drop: the mainstream way is to make full use of visualization effects and save time on the interface
    storyboard. The convenience of
    vc/view/cell, is that you can see the superior-subordinate relationship between views more clearly, especially for complex pages. The disadvantage is that if you don't pay attention to team cooperation, it will lead to conflicts, so there is another practice of putting only a few vc in br > xib, basically one corresponds to one vc/view/cell, conflict is reduced, and each does his own thing. The inconvenience is that cell, cannot be placed directly in tableView. Generally, it is registered and added by registerNib, which is not as convenient as storyboard when dealing with complex lists.

  2. Pure code is actually nothing, but for the initialization code and layout code of each control, you need to learn the Masonry mentioned above about the layout, but you need to be familiar with autolayout before you start, which is not suitable for people who come into contact with at first
  3. .

here is iOS Advanced Books . There are some good books, but I haven't read any of them.


if your project is relatively large, it is not recommended to use storyboard (more than ten interfaces), event binding of multiple interfaces and ui layout in one monitor can be tiring to switch and query each time.

Pure code is recommended for multi-person development, and it will be troublesome to debug and encapsulate it in the early stage. In the later stage, there is technology accumulation, each component library is relatively mature, the development efficiency is the highest, and the package is much smaller at the same time.

xib can be used according to personal preference.


by drag and drop, you mean all kinds of controls in the page layout. My suggestion is to make active use of the UI design tools in IDE, which can improve a lot of efficiency. After all, the development of an APP is not only on UI, but also has a lot of application logic, system calls, network communication, data storage and so on. There is no need for too much practice and just be satisfied with completing UI


suggest that UI use storyboard and xib, well. There will be no problem. I feel more elegant than pure code

.
Menu