Since 1988, starting with NeXTSTEP 0.8 in the company’s development environment was present this application. Linker interfaces. Pretty original (not unique but still unusual). He was one of the reasons why Tim Berners-Lee chose to write the world’s first browser-WorldWideWeb NeXT. Included Xcode 4 this application was not… At the time when the Internet was still very young, and to find in it everything your heart desires was impossible, I posted somewhere an article about this miracle. I haven’t been able to try NeXTSTEP, but downloaded the full documentation from the site NeXT (already either bought by Apple, or bought it), and carefully studied it.
The publication was not the most friendly way set up in relation to Apple (in 1997 it was a common occurrence), and accompanied the article with a killer review. The most InterfaceBuilder was not designed by Apple! It was written by a Frenchman, for Lisp.
In fact, if I mentioned in the Apple article, it is only in connection with its merger with NeXT, but the answer was not no way. A few years after learning the details, I wanted to get even with the offender (but already not was): “some French” name was Jean-Marie Uyo, he is in fact in 1986 he invented and wrote Interface Builder (with a space, it about something speaks?) for ExpertLisp. This is one of the implementations of Lisp for the Mac. Integrated with its operating system and API.
This Lisp was relatively popular on Macs, but because of its rarity and great price I never got. Here stolen copies of this Lisp was not. And then disappeared, and my interest in Lisp.
But in late 1987, Interface Builder and its author brought in NeXT and demonstrated their jobs. As predicted by the seducers, Steve was shocked, fascinated, and wanted to use “this” in ProjectBuilder. Steve has acquired the Jean-Marie.
Less than a year a program called InterfaceBuilder became part of the development environment NeXT. And experienced in its composition all the dramatic transformation it has experienced. In Mac OS X it was renamed again in Interface Builder (with space, it is a Mac), under the same name it became a part of Xcode, and suddenly, in 2011, it was not…
What is Interface Builder?
This is the linker user interfaces do not generate program code. He’s dealing with real objects. With “dried”, but genuine, which when applied are not recreated, and restored.
Because of their nature they can be linked to objects in code, as if they were part of it – and at the same time, most of the objects are visually displayed on a “canvas” in Interface Builder. You can drag them to the desired position on the screen if the object’s class does not forbid to change the size of the object changes its size.
In addition to objects with a visual representation (buttons, scroll bars, text fields and other interface equipment) in Interface Builder existed invisible objects, which are likewise recovered in the code and organized communication between the program and interface. The design is very flexible and manageable.
The restored object (visible or invisible), if it was declared in the code, we can further set – and in General, to do anything with him.
In 1986, after 33 years of existence, the Interface Builder has acquired numerous new abilities, some of the prehistoric innovations have sunk into oblivion but today it is one of the most effective tools for writing programs for the operating systems Apple. If you learn how to use it (the developer tools are written for smart people, they need to learn and to master).
And the title is “not looking”? It is a lie to attract more display advertising? In the header the truth.
The Interface Builder and Xcode 4
In Xcode 4 Interface Builder ceased to exist as a separate program. Since then, he is the inseparable part and is only a mode of the main application development environment.
When opened in the development environment to the nib file (they also do not look at source code), the IDE enables this mode where they can edit, create or simply browse. Starting with Xcode 3 nib files in the source code with the extension “.xib”, XML-based format. During Assembly they are compiled into nib files.
In Xcode 4 integrated Interface Builder again improved, leading to confusion even the most experienced users – but not for long. But he learned a new trick, saying that he does not generate the source code was wrong. But more will not. These small violations of the concept was appropriate, pleasant and very simplified life.
In addition, in Xcode 4.2, there was another revolution, but before we talk about it, we need to talk about something else.
Interface Builder and iOS
Opening and decoding of source codes for iPhone apps has revealed few details, very interesting for Mac ovskih developers. In applications you have not used nib files and in the vast majority of cases the coordinates of the objects on the screen asked directly, their precise values.
In the first beta versions of the iPhone SDK Interface Builder with iPhone OS didn’t work at all. I don’t remember which of them has finally made friends, but even in the final release is Interface Builder works with the iPhone OS was impassable a bunch of bugs and glitches.
He was, among other things, still not finished (sometimes). Apparently, Steve just remember that “The real artists ship”, and took a resolute decision.
Even those who have lived in the Interface Builder for years, he had problems, one by one. Newbies prefer to do without it, because in the examples you can find online and in pop-up books on programming in the system IB iPhone is almost not used.
In a company where all were beginners in iPhone OS, the guys have been accustomed to the use of Interface Builder, they felt its usefulness (despite the problems).
The following developers were experienced and eaten on iOS (her name already) is not one dog – they flatly refused to use it, preferring to build interfaces “handles”. As the first iPhone programmers on Earth.
The next generation of programmers was very surprised at this.
Another revolution occurred with the Interface Builder in Xcode 4 (except for it getting rid of bugs and glitches and turning it into robust, user-friendly tool for developing in iOS), was the new format of the archives “dehydrated” objects, called storyboard.
Files in this format to have the extension “.storyboard”, and now in one file it was possible to identify the interface of the application completely, with transitions between screens and visual effects.
Word storyboard can be translated as “scenes” – table of the episodes by actors. And in Russian, and in English is the jargon of filmmakers. I suspect that without Steve, the largest shareholder of Walt Disney, who devoted computer animation a few years of life, it was not – but it turned out he had nothing to do with it. It the moment was interested in more important and much less pleasant things.
The storyboard was great, though not without drawbacks.
Since NeXTSTEP (and perhaps with even more gray days of Jean-Marie UIO), in all varieties of tutorials and documentation on using the Interface Builder mentioned in the nib file, it is not recommended to combine too many interfaces. It is for this is not optimized, it will be a long time to boot and work somehow.
Once on this rake came I: in 2001, in its first Cocoa program I graphic resources gathered in one file. That was in one place, so peaceful. And the fact that Interface Builder has become increasingly slow and braking, I took it on account of its low quality. Divide this ball after enlightenment, it was very difficult.
With the same error beginners I have met several times.
Now this bad (but understandable) habit has ceased to be bad, now code be inserted on the interface using storyboard even as a living drawing design.
To be continued
To discuss the history of Apple you can in our Telegram chat.