可视化PK纯代码

简述

其实今天说的内容不仅仅局限于Qt,在很多其它语言或者框架中也适用,那就是 - 用可视化工具or文本编辑器?拖or不拖?

如果有人问我喜欢脱or不脱?我会毫不犹豫地说不脱,因为我比较矜持O(∩_∩)O哈哈~!

其实刚接触Qt,我就习惯了手写代码,不喜欢用Designer。不喜欢并不代表不会,其实很熟练 - 因为很熟,所以注定是朋友O(∩_∩)O~。就和我一直很喜欢用Visual Studio一样,当然,Creator也是很棒的(博客中的分享也是基于Creator来讲解)。

喜欢并不能说明纯代码在任何情况下一定是最好的,也许对我来说是因为习惯了。这好比喜欢一个人,不仅仅喜欢TA的优点,还得包容TA的缺点,这就是喜欢!

  • 简述
  • 你是否被鄙视过
  • 猿A-PK-猿B
  • 优略性
  • 何去何从
  • 越拖越难过
  • 探讨

你是否被鄙视过

项目开始时,组内开发成员过来碰了个面。“是用可视化编辑器,还是纯代码?”话音未落,就会有人一副鄙视的样子说当然是纯写代码了。然后自己闷头在想这是个什么情况。没有可视化编辑器的时候,一直想要可视化编辑器,现在有这么好的可视化编辑器为什么却非不用呢?

猿A-PK-猿B

猿A:能拖不拖的属于思想腐朽,不思进取。本身5分钟能搞定的事还用半小时撸代码玩,是病,得治。

猿B:装逼必须的,我有代码洁癖,自己写实现UI大部分都是手动,简单直观快捷,而且复杂关系的布局好调整。

猿A:如果光是一些简单的交互,界面也不复杂,这时候拖控件所能体现出来的效率是纯代码无法比拟的。

猿B:我很熟悉了,即使手写也可以很快搞定,拖控件那都是低级程序员干的事,大神怎么屑于做?

猿A:刚开始的时候,我不会手写,只能拖控件。而且,我们有可视化编辑器为啥还要手写,不是多此一举吗?

猿B:控件就这么几个,不能满足需求的时候怎么拖!手写的话可以自定义很多控件,而且很方便移植。

猿A:不要跟自己过不去,真的。人生苦短,何必呢?

猿B:纯代码可以让你熟悉整个流程的实现和细节,何乐而不为?

猿A:反正我喜欢拖,不管怎么说,我都要拖。拖。。拖。。。一拖到底!

猿B:沉默中。。。开始思考人生。

优略性

说实话,我觉得到底是拖控件还是纯代码还是要以项目复杂度为准。

以前我参与过百万行代码量的项目,这是一个什么概念?大家可以和自己最大的项目对比一下。访问量较大、安全性较高,当然,其中80%以上肯定是纯代码写的。很简单的道理,很多界面布局和交互从技术实现上,难度极大,光是用可视化编辑器肯定实现不了。

参与过几万行代码量的项目中,基本有很多是一些简单的交互,界面也不复杂,这时可视化编辑器所能体现出来的效率是纯代码无法比拟的。

但是,毫不夸张的说,一些简单的UI如果用可视化编辑器来做,一个优秀的程序猿用纯代码很快就可以完成。但是如果有一个工具可以提高开发效率,为什么不用呢?

何去何从

  • 可视化开发工具能实现的功能,代码都能实现。
  • 代码能够实现的功能,可视化开发工具不一定能实现。
  • 对于可视化开发工具能实现的功能,其开发效率要高于代码。

显然,如果存在一个所有功能都能用代码实现的项目。

a. 全部使用代码。
可行,效率低,纯代码思维,全键盘工作。

b. 全部用可视化工具。
不可行。

c. 使用可视化工具实现能实现的功能,剩下的使用代码。
可行,效率相对较高。

看来就选c了~~~,然而现实中哪有这么理想的情况,很多情况下你需要花时间仔细斟酌:这个效果我是要用可视化编辑器来做更好呢,还是纯代码来写更棒呢。。。可视化编辑器我点两下鼠标就搞定了。。。代码好像可以预留一些扩展来应对需求变化。。。O(∩_∩)O~,对大部分程序猿来说,此项操作比较耗时!

越拖越难过

歌曲:越拖越难过
歌手:╰一去 二三里`

说 说你为什麼 为什麼要拖
说你为何要拖动 别拖
求你别软弱 求你说出口 拖动的理由
但你却(还) 拖 拖 拖 拖到什麼时候
如果要拖却又为何停留
请你别 拖 拖 拖 大声的说出口
请你要拖就拖个快活

如果说你要拖 我不会留
我不去管以后
然后我们说清楚 一句话就够
如果说你要拖 我不会留
我不去管以后多麼痛 多麼的难过
别越拖越难过
然后连代码都不撸 继续沉默
连商量都没得说 为了什麼
然后跟别人说你其实还是不爱拖
就算了吧 Coding我来作

探讨

刚工作的时候,参与的第一个项目的时候,所有的界面都是用可视化编辑器设计的,当时不管三七二十一,先做完再说,根本没有时间考虑太多。但到了后期维护时,我把所有的UI都删了,全部用代码重写了一遍,虽然过程很痛苦,但是效果很喜人。因为我知道,这个阶段总有一天要经历!

拖or不拖,一直都备受争议,说说你的选择。。。

时间: 2024-11-05 22:00:45

可视化PK纯代码的相关文章

iOS界面布局之三——纯代码的autoLayout及布局动画

iOS界面布局之三--纯代码的autoLayout及布局动画 一.引言         关于界面布局,apple的策略已经趋于成熟,autolayout的优势在开发中也已经展现的淋漓尽致.除了使用storyBoard进行布局约束的拖拽,有时我们也需要在代码中进行autolayout的布局设置,Masonry库可以方便的创建约束属性,实际上,我们也没有必要再使用系统原生的代码来创建和设置约束,这篇博客只作为使用的方法备忘.前几篇布局介绍的链接如下: 使用autoresizing进行界面布局:htt

ios block 逆传-纯代码写block逆传值,代码块应该写在哪个方法里

问题描述 纯代码写block逆传值,代码块应该写在哪个方法里 如果是用纯代码写block逆传值,Apush到B,从B中传值到A,在B中定义block,调用block. 在A中准备代码块,这个准备的代码块在哪个方法里写? 如果是用storyBoard创建的话,在prepareForSegue方法里写,但是纯代码不知道在哪儿. 也就是B中调用[self.navigationController popViewControllerAnimated:YES]这个方法之后 ,A中该调用哪个方法 解决方案

史上比较用心的纯代码实现AutoLayout

入职有两三个月了吧,都是使用 Objective-C 纯代码(虽然有时候偷偷参杂一些 Swift 开源库)来编写公司APP,写布局的时候几乎都是要么在初始化的时候用 initWithFrame,要么就初始化完毕之后用 view.frame.虽然这种方法很直观,一眼就可以看出这个 view 的位置以及大小,但是坏处也是有的,比如说在计算的时候麻烦等等. 概述 使用 Objective-C 纯代码编写 AutoLayout,看 AutoLayout 的字面理解就是自动布局,听起来好像蛮屌的样子.说白

ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局

一.实现效果 二.使用纯代码自定义一个tableview的步骤 1.新建一个继承自UITableViewCell的类 2.重写initWithStyle:reuseIdentifier:方法 添加所有需要显示的子控件(不需要设置子控件的数据和frame, 子控件要添加到contentView中) 进行子控件一次性的属性设置(有些属性只需要设置一次, 比如字体\固定的图片) 3.提供2个模型 数据模型: 存放文字数据\图片数据 frame模型: 存放数据模型\所有子控件的frame\cell的高度

ios-IOS 如何用纯代码适配屏幕

问题描述 IOS 如何用纯代码适配屏幕 在应用中如何用纯代码适配不同的iPhone设备,有没有好的方法? 解决方案 用百分比适配啊 比如你控件的宽度在4寸手机上是120,那么在别的尺寸上的宽度:就是别的宽度跟当前宽度的一个比值 乘以 120 // 当前屏幕宽度 / 你在哪个尺寸的宽度做的 (比如5s的宽320) * 那个控件的宽度 let imgWidth = UIScreen.mainScreen().bounds.size.width / 320 * 120 5,5c,5S(4寸):320

javafx-JavaFX登录页面跳转(纯代码)如何实现

问题描述 JavaFX登录页面跳转(纯代码)如何实现 在做一个javafx的项目,有2个Controller,一个是登录的(LoginContrtoller),一个是应用的(ApplyController). 登录场景用到.fxml文件 应用的场景是用纯代码controller写的,没有用.fxml文件. 现在想要从登录的场景跳转到应用的场景中,该如何实现? 急求大神帮解决!谢谢!!! 解决方案 问了其他人,其实不难,只需要先关闭当前场景,再开启应用场景就OK了

aps.net网站中不使用image控件,使用纯代码如何显示图片?

问题描述 aps.net网站中不使用image控件,使用纯代码如何显示图片? aps.net网站中不使用image控件,使用纯代码如何显示图片? 现在有十张图片,根据前台一个变量的值来显示不同的照片,用纯代码怎样显示出图片? 解决方案 <img runat="server" id="img1"/> img1.Src=param=="1"?"xxx.jpg":"xxxxxxx.jpg";

android 纯代码TableLayout布局

问题描述 谁可以帮忙写个纯代码的表格布局示例: 样式 : topleft center right bottom 问题补充:对不起,不要XML文件方式...请用JAVA写.地狱牢笼 写道 解决方案 main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

纯代码利用CSS3 圆角边框和盒子阴影 制作 iphone 手机效果

原文:纯代码利用CSS3 圆角边框和盒子阴影 制作 iphone 手机效果 大家好,我是小强老师. 今天我们看下CSS3最为简单的两个属性.      css3给我们带来了很多视觉的感受和变化,以前的图片做的事情,很多代码都能实现. 下面给大家简单介绍两种最为常见的圆角边框和盒子阴影,同时附上一个iphone 手机效果,提供大家练习. 1.border-radius 圆角矩形  语法格式: border-radius:  水平半径/垂直半径   只不过我们平时都把后面的这个垂直半径给省略了.