非程序员怎么入门 oop - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jxxz
V2EX    问与答

非程序员怎么入门 oop

  •  
  •   jxxz 2019-10-09 15:32:48 +08:00 1787 次点击
    这是一个创建于 2243 天前的主题,其中的信息可能已经有所发展或是发生改变。

    非程序员,平时使用 py 工作,平时写写脚本,把每个功能抽成一个函数,面向过程的编程就可以满足需求了;现在想了解下 oop 编程,有没有什么入门的书籍推荐吗,感觉如果为了 oop 而全部写成类的方式又有点本末倒置了,所以想了解了解面向对象的优点以及和函数编程的区别在哪里

    9 条回复    2019-10-09 16:27:39 +08:00
    jessun1990
        1
    jessun1990  
       2019-10-09 15:44:32 +08:00
    就我粗浅的经验看,为了 OOP 而 OOP 没有必要。也有很多大佬不喜欢面向对象那种思路。
    优缺点比较和区别,我觉得看最后的代码结构吧。
    最让人易懂舒服的结构最重要。
    其次是简洁。

    mark 一下,看看有没有别的大佬有高见。
    qwjhb
        2
    qwjhb  
       2019-10-09 15:55:54 +08:00
    和我情况挺像的,等你抽象功能成函数还要保存相应数据的时候用类就方便了。没必要刻意吧
    coderluan
        3
    coderluan  
       2019-10-09 15:57:06 +08:00
    没必要,建议别学。
    wutiantong
        4
    wutiantong  
       2019-10-09 15:59:49 +08:00
    只写点脚本是理解不了这些东西的,找机会干个大项目再来谈体会吧。
    Vegetable
        5
    Vegetable  
       2019-10-09 16:01:14 +08:00
    脚本感觉大可不必和 oop 扯到一起,面向对象的话,往往是在比较复杂的系统里有实用价值
    memedahui
        6
    memedahui  
       2019-10-09 16:08:44 +08:00
    我的理解,无论学什么语言 java 是必学的
    YUyu101
        7
    YUyu101  
       2019-10-09 16:21:45 +08:00 via Android
    哈哈,我还记得刚学的时候那些个鬼例子,什么鸟继承动物。结果后来发现 oop 和真实世界没半毛钱关系,最后殊途同归还是数据和逻辑分开,等于表格+过程语言。
    wellhome
        8
    wellhome  
       2019-10-09 16:27:09 +08:00 via iPhone
    没啥用,大工程才用,用复杂性来解决代码组织。一定的繁冗却可以大规模协助。单纯为了 oop 而 oop 不可取。
    另外,gui 我认为是天生 oop.
    BingoXuan
        9
    BingoXuan  
       2019-10-09 16:27:39 +08:00
    如果你有一堆函数的某一必要参数都是同一数据类型,那么你就把这些函数集合写成类就可以了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2681 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 13:29 PVG 21:29 LAX 05:29 JFK 08:29
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86