Apple、Interface Builderを終了してください!

この投稿はAppleに対する怒りの叫びですが、それでも私には希望がありました。 私は4年前からiOS開発者でしたが、最初は一時的な欠陥のように見えましたが、些細な詳細が長年にわたって中国の拷問に変わりましたが、それでも毎日、よく、または少なくとも週に1回IBを使用しています。







おそらく、Appleはそのような批判に値しない-真実は、他のすべて、まあ、またはほとんどすべてが最高の状態にある。 iTunesとApple開発者ポータル(近年では、それでもはるかに良くなっている)テクノロジを除外すると、IEでの表示方法ではなく、自分のすることに集中できます。



最初はIBをまったく使用しませんでしたが、他のビジュアルエディターに引き続いてIBは非常に曲がりくねっているように見えました。 私見であるMacromedia Dreamviewer MXでさえ、UIのWYSIWYGエディターと呼ばれる可能性が高くなりました。 しかし、数年が経ち、素晴らしいものが登場しました-Autolayout-これはコードに実装するのは悲惨なほど不便です。 このコードではほとんど運がありません:



UIImageView *iv = [[UIImageView alloc] initWithImage:image]; UIView *renderView = [[UIView alloc] initWithFrame:iv.bounds]; NSInteger completedDistance = renderView.bounds.size.width * percentsCompleted; UIView *progressView = [[UIView alloc] initWithFrame:CGRectMake(completedDistance, 0, renderView.bounds.size.width, renderView.bounds.size.height)]; progressView.backgroundColor = RGB_UICOLOR(255, 255, 255, 0.8); renderView.clipsToBounds = YES; [renderView addSubview:iv]; [renderView addSubview:progressView];
      
      







しかし親切なコード



 NSMutableArray *constraints = [@[] mutableCopy]; [constraints addObject:[NSLayoutConstraint constraintWithItem:self attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.parentView attribute:NSLayoutAttributeWidth multiplier:1 constant:0]]; [constraints addObject:[NSLayoutConstraint constraintWithItem:self attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:self.parentView attribute:NSLayoutAttributeHeight multiplier:1 constant:0]]; [constraints addObject:[NSLayoutConstraint constraintWithItem:self attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.parentView attribute:NSLayoutAttributeTop multiplier:1 constant:0]]; [constraints addObject:[NSLayoutConstraint constraintWithItem:self attribute:NSLayoutAttributeLeading relatedBy:NSLayoutRelationEqual toItem:self.parentView attribute:NSLayoutAttributeLeading multiplier:1 constant:0]]; [self.parentView addConstraints:constraints];
      
      







開発者の魂を憂鬱と憂鬱に陥れます。 IBでは、自動レイアウト設定も最初は砂糖ですが、時間が経つにつれてそれに慣れると、ひどいジャムに気付かないようになり、小さな傷に耐えるようになり始めます...制限。 しかし、代替手段はなく、形式は文書化されておらず、サードパーティのツールはありません! これが私の短縮された小さなブラックリストです。







このすべてだけでなく、最近、お尻に新しい痛みを加えました。







Appleの功績として、各くしゃみマウスから制約を取り除くことは可能でしたが、xCode 4で神経衰弱を4回引き起こし、パートナーの友人も心臓発作で亡くなりました。



最近iOSを発見した人たちは、「フィニッシュ!」という合唱で歌います。リンゴとスティーブジョブズのアイコンを信じて信じています。 私は反対します:「彼らはそれを終わらせない!」、彼らは常により多くの重要なことをしなければなりません。 本当に重要な、美しいものです 、Apple-私たちは毎日IBを扱っています。



別れに、私は興味深い世論調査を提供したいと思います。



All Articles