V 友们有做 windows 客户端开发的吗?最近有些迷茫,进来聊聊吧。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
ensonfun
V2EX    程序员

V 友们有做 windows 客户端开发的吗?最近有些迷茫,进来聊聊吧。

 
  •   ensonfun 2014-03-04 09:19:39 +08:00 9088 次点击
    这是一个创建于 4241 天前的主题,其中的信息可能已经有所发展或是发生改变。
    先说一下自己的情况,11年毕业至今一直在做windows下的客户端开发,主要是用C++,感觉最近几年win下的客户端有些“过气”,我的意思是没什么创新,而WEB和移动客户端发展的蒸蒸日上,不断有新技术,新的创新,自己好像有些不入流。因为自己也喜欢新的东西,比如新的技术、新的设计、新的框架等等,但这些大多都是web和移动方面的。
    最近浏览一些招聘网站,发现从需求上来说也是web和移动平台较多,而C++也大多是Linux下的服务器开发。
    其实我想问的是:
    同样做win客户端开发的V友们未来如何发展呢?
    现在考虑转web或者移动客户端开发是不是一个更好的选择?

    欢迎回复,我会感谢你们的:-D
    第 1 条附言    2014-03-05 11:28:31 +08:00
    感谢各位的回复,其实我的意思是windows下客户端环境太差
    可大致分为两种:
    1.360、金山等安全类、工具类软件,但是自从免费开始,这些软件都开始毫无节操,改主页、弹窗、收集信息变为盈利的手段,虽然我不是什么道德高尚的人,但是做这种软件我不喜欢。
    2.面相具体行业的工业软件,这类软件的问题是开发出来成就感很低,而且面对行业往往对于交互什么的往往没有要求,各种奇葩功能堆在一起,开发起来让人苦不堪言。

    其实,作为一名程序员,支撑我继续下去的除了金钱就是成就感了,而我认为,开发一些大众用得到,讲究体验的产品,让用户用了叫好的产品,能得到最大的成就感和满足感。

    看了各位的回复我也收获很多,我想这个帖子也可以给有同样的困惑的朋友们一些参考。

    最后,我已经明确了我接下来要做的事情,学习Ruby,先做一个简单的小网站,慢慢转向Web开发,进入一个新的世界,哈哈。
    54 条回复    2015-07-22 09:46:37 +08:00
    cxe2v
        1
    cxe2v  
       2014-03-04 09:28:41 +08:00   1
    本人在转移动端,话说win客户端现在基本都是事业单位,政府单位在用,他们都是找的有关系的人拉团队做项目,想要在民间市场上做win客户端,确实不吃香了
    ensonfun
        2
    ensonfun  
    OP
       2014-03-04 09:33:37 +08:00
    @cxe2v 确实,这就是我想表达的,我也想开发一些很酷很有创新的东西,并且是大众都可以用得到的,这样会有更强的成就感,但是感觉做win下的客户端开发后,这些都与我不沾边。
    harrymoo
        3
    harrymoo  
       2014-03-04 09:34:26 +08:00   1
    我毕业那会还是Windows开发很好找工作的时候,做了6年Windows,从底层驱动做到GUI做到DCOM,从Delphi/C++Build/VC做到.net;然后就转JAVA,转后台开发;再转Android,转iOS;现在在做ARM,嵌入式开发。
    怎么说了,以上的选择真的不是我特意的,工作需要什么,目标需要什么,我就去用什么。
    其实Android/iOS开发跟Windows开发基本逻辑还是一样的,事件处理、GUI Paint什么的,要转也快。

    你不如自己找个小想法做做先?
    dong3580
        4
    dong3580  
       2014-03-04 10:53:26 +08:00   1
    C#,在做web客户端,其实和win客户端一样,只不过考虑兼容性多点,诶,同样迷茫ing.
    missdeer
        5
    missdeer  
       2014-03-04 11:01:34 +08:00   1
    我之前就一直是做Wndows桌面软件的,后来进了现在这家公司,有个项目同一套代码有跨平台的需求,所以我现在可以说自己有Linux开发经验了。但实际上现在很多找Linux服务器开发的,都要求有大规模并发的项目经验,我这个项目没有这条件,但终归是多了一点谈资了。
    favormm
        6
    favormm  
       2014-03-04 11:01:41 +08:00   1
    做windows下的驱动开发。 这个应比较吃香。
    ensonfun
        7
    ensonfun  
    OP
       2014-03-04 11:28:27 +08:00
    @missdeer 其实我想往web方向转,但是web和客户端差距比较大,等于现在积累的经验很少能够用到,所以很纠结。
    icedx
        8
    icedx  
       2014-03-04 11:48:45 +08:00   1
    移动端终究不能代替桌面端

    坚持做下去会有回报的

    我人生都迷茫了 你这算啥?
    asoncheng
        9
    asoncheng  
       2014-03-04 11:53:13 +08:00   2
    桌面时代:客户端已经距离很远了。
    互联网时代:接下来可以选择WEB开发(后端,前端,Java等)
    移动互联网时代:APP,后台开发
    物联网时代:电视平台,硬件平台,云平台

    看好趋势把握好哈。
    ChiangDi
        10
    ChiangDi  
       2014-03-04 11:56:14 +08:00   1
    现在最赚钱的是互联网公司了,看看《黑客与画家》。
    hustlzp
        11
    hustlzp  
       2014-03-04 12:00:59 +08:00   1
    转移动吧。
    bengol
        12
    bengol  
       2014-03-04 12:22:49 +08:00   1
    按我的理解,无需关注这些,项目需要什么就做什么,做好做漂亮。钱给不够就跳槽走人。没必要非得去搞什么专门技术。
    fangzhzh
        13
    fangzhzh  
       2014-03-04 12:29:06 +08:00   1
    赶紧跳船吧,船快沉了.
    ensonfun
        14
    ensonfun  
    OP
       2014-03-04 12:45:38 +08:00
    @fangzhzh 确实想跳
    但是现实的问题有两个:
    1.因为现在上班也比较忙,所以要想踏实学习新的技术就要辞职。
    2.如果直接找Web或者移动开发的职位,不知道有哪个公司肯收留我这个有C++客户端开发基础的码农呢?
    lukic
        15
    lukic  
       2014-03-04 12:53:02 +08:00   1
    @enson110 要勇敢。1或者2 都是可以尝试的,不要思前想后,错失了时机。
    过来人的建议。。。
    txx
        16
    txx  
       2014-03-04 12:57:44 +08:00   1
    @enson110 据我所知 金山iOS 那头招人 基本上都是招 C++ 程序员 不看你之前做过什么的 C++ 过硬 一个月速成iOS 肯定没问题,而且还比iOS圈里面 很多开发者还靠谱
    ensonfun
        17
    ensonfun  
    OP
       2014-03-04 13:11:20 +08:00
    @txx 这么说,我是不是首先要买个MacBook了解一下ios开发?
    WildCat
        18
    WildCat  
       2014-03-04 13:29:53 +08:00 via iPhone   1
    楼主竟然上面基本都给了感谢,赞。
    PS.我就路过打个酱油
    txx
        19
    txx  
       2014-03-04 13:31:29 +08:00   1
    @enson110 我这么说的意思是 您别太在意自己做了好多年的C++客户端,可就业范围很窄,好的C++程序员是很吃香的。
    ensonfun
        20
    ensonfun  
    OP
       2014-03-04 13:38:44 +08:00
    @txx 其实技术并不是很重要,重要的是win下的客户端开发已经没有什么发展了并且自己也不是很喜欢。我挺希望把C++用到Web或者移动开发中去,只是没有具体的经验,很难令我找到新的工作,这正是我所发愁的。
    ldehai
        21
    ldehai  
       2014-03-04 14:33:01 +08:00   1
    cocos2d-x是用C++开发的,所以你可以继续用你的C++开发手机游戏,不用纠结要不要放弃C++了。
    itfanr
        22
    itfanr  
       2014-03-04 14:55:44 +08:00
    @harrymoo 经验好丰富啊
    loveshouhu
        23
    loveshouhu  
       2014-03-04 14:56:43 +08:00   1
    总觉的C++基础过硬的话什么都可以干的。。。
    itfanr
        24
    itfanr  
       2014-03-04 14:57:13 +08:00   1
    我感觉PC上的开发已经慢慢衰落了 除非win8.1平板普及
    ensonfun
        25
    ensonfun  
    OP
       2014-03-04 14:58:27 +08:00
    @ldehai 是的,我并不纠结语言,只是在纠结方向,如我标题所说,windows下的客户端开发实在看不到发展。但是转换方向就需要经验,甚至可能会换语言,所以需要下决心学习,否则现在很难找到新的方向的工作。
    perrywky
        26
    perrwky  
       2014-03-04 15:12:12 +08:00   1
    我很久没用过windows了,上次装了下360,发现安装过程很高大上啊,体验做得很好,而我对windows软件的印象还停留在3年前,看来这段时间进步了不少。

    我觉得windows软件开发是绝对不会过时的,虽然没有移动和web火,但它是必需品,不可能被替代。
    jimrok
        27
    jimrok  
       2014-03-04 15:35:12 +08:00   1
    收个13寸的macbook晚上回家弄,iOS开源的应用那么多,先学习一下。然后自己做个开源的小作品,半年后工作不成问题。
    funcman
        28
    funcman  
       2014-03-04 15:36:58 +08:00   1
    楼主用C++做啥的?
    ensonfun
        29
    ensonfun  
    OP
       2014-03-04 15:39:16 +08:00
    @jimrok 想入个11mba外接个显示器。
    ensonfun
        30
    ensonfun  
    OP
       2014-03-04 15:40:39 +08:00
    @funcman windows客户端开发 写个dll,或者写个应用工具之类的,mfc\wtl\com之类的东东,目前是做安全方面的,类似某某安全卫士。
    jsonline
        31
    jsonline  
       2014-03-04 15:44:06 +08:00 via Android   1
    转方向啊!明摆的事
    jimrok
        32
    jimrok  
       2014-03-04 15:44:59 +08:00   1
    @enson110 妥妥的,干两个私活就都回来了。
    enjoyquinfo
        33
    enjoyquinfo  
       2014-03-04 15:50:05 +08:00   1
    如果有得选择,建议使用 Qt 这样的跨平台开发框架,以后不论在 Windows 下还是 Linux、OS X 都用得上,没有必要刻意向潮流去转,需要什么用什么。
    297951292
        34
    297951292  
       2014-03-04 16:10:06 +08:00
    michaelye1988
        35
    michaelye1988  
       2014-03-04 18:16:34 +08:00   1
    楼主是做桌面客户端开发的吧?这个确实不好找工作,之前一个同事做这个的,有这种需求的公司不多,一般都是大公司吧,c/s的架构不如b/s的方便,还是做web和移动开发android/ios会比较好找工作很多很多。
    holmesabc
        36
    holmesabc  
       2014-03-04 19:02:23 +08:00 via Android   1
    腾讯 迅雷 金山 哪个不是C++大户。
    第一次听说C++不好找工作的。
    ensonfun
        37
    ensonfun  
    OP
       2014-03-04 19:15:25 +08:00
    @holmesabc 并不是说C++这门语言的问题 而是具体的windows客户端开发
    allenforrest
        38
    allenforrest  
       2014-03-04 21:32:40 +08:00 via iPhone   1
    其实现在windows桌面软件开发也不只是以前纯粹MFC的套路了,完全可以用HTML Dialogue做基础,所有UI交互和表现层都用WEB技术实现(HTML/CSS/JS),C++部分主要处理业务逻辑,与JS交互。这样即是你熟悉和熟练的平台、语言和开发环境,又可以借此学习WEB相关技术,一举两得。
    我们现在好几个项目里的Windows客户端都用这种方案,WEB的表现能力现在也足够强,能做出许多原先用传统控件式UI开发很难做出的效果。
    uleh
        39
    uleh  
       2014-03-04 23:14:36 +08:00
    貌似 Win8 桌面已经可以支持 WebApp 了?
    Ricepig
        40
    Ricepig  
       2014-03-04 23:46:03 +08:00   1
    web的唯一方便就是部署。

    其实lz做客户端,osx客户端,windows客户端,iOS app,很多时候思路是很接近的。

    windows客户端也不一定不够高大上啊,你看现在做客户端哪家不是先做windows,dropbox够高大上吧,也提供了windows客户端呀。

    所以,只是你暂时看不到合适的工作吧?
    liuwx
        41
    liuwx  
       2014-03-05 01:04:10 +08:00   1
    我是windows下客户端的。经验没多久.
    你不说我都想不起来这个 能阻碍我换个其他搞C++工作的。
    只要会C++不就行了? 不知道你说的经验是啥 前辈?
    ensonfun
        42
    ensonfun  
    OP
       2014-03-05 08:59:42 +08:00
    @liuwx 除去具体的语言之外,还要有具体的行业方向经验,例如服务器后台开发经验、大数据处理经验等等。
    mantianyu
        43
    mantianyu  
       2014-03-05 16:53:52 +08:00   1
    转移动吧, windows 桌面开发的领域太狭窄太狭窄了.

    MFC 框架, 多少年也就那样, C++ 用的还不是 C99 标准而是微软的方言. .net 笨重, 不好用.

    web 这边才风景独好啊
    mantianyu
        44
    mantianyu  
       2014-03-05 16:55:29 +08:00
    @mantianyu 上面说错了 是 C++11 标准, 和 C99 弄混了
    ensonfun
        45
    ensonfun  
    OP
       2014-03-05 17:25:01 +08:00
    @mantianyu 如我附言所说,先用ruby弄个小网站体验一下,看看另一个世界是什么样子:-D
    liuwx
        46
    liuwx  
       2014-03-05 23:31:20 +08:00
    @enson110 关注.
    eickegao
        47
    eickegao  
       2014-03-06 06:50:45 +08:00   1
    C++是一个很复杂的语言,但是如果学过C++的话转其他语言都是很简单的。

    windows也是一个很大众的平台,上面的工作机会也很多,但是如果想扩展一下自己的视野的话,可以考

    虑转移动或者web这两块。
    eickegao
        48
    eickegao  
       2014-03-06 06:52:49 +08:00
    @mantianyu .net是比较笨重,但是说它不好用,估计你也没用过多少。

    .NET和C#是我用过最好的语言和类库。
    jianghu52
        49
    jianghu52  
       2014-03-06 10:28:18 +08:00   1
    我还是没太懂楼主为什么这么强调windows,如果你想学linux,最简单的方法,家里电脑装个虚拟机就ok了。我这种linux小白级别的人,从下vm到找ubuntu的镜像,再到自己学会装输入法,装播放软件,开始用python写第一个helloword也就是2个晚上的事情。
    楼主专做web页面我绝对支持,但是楼主强调windows我觉得没什么意思,C++实际上对我来说是一个很难的东西,尤其是构析函数,总是弄不明白。如果楼主真的是在windows上能把c++玩的很溜的话,我觉得转到linux下并没有什么困难吧。
    NauhiL
        50
    NauhiL  
       2014-03-06 11:13:17 +08:00   1
    用C# 做C/S软件很多年,服务对象是政府公共服务行业
    这种政府牵头的,对软件的可用性,稳定性,技术更新要求都很低
    很多项目都是上面领导脑子一热,搞个什么形象工程就要马上开始的
    搞的程序员很苦逼,从需求到发布一个月时间喔,简直是恶梦般的任务
    他们不管你时间,难度,只要求结果
    他们出来剪彩,程序完全就是个DEMO啊,老百姓不管你的,他们就觉得花钱了买你的服务,我就是上帝
    每天早晨起来,最怕接到电话,说黑压压几十个老人在服务台门口办业务,你的程序有问题崩溃,在那里不能用
    想死的心都有,马上扛着笔记本去现场DEBUG,有多少条命都不够折腾的这种项目
    桌面开发有兴趣的就转ISO/ADRIOD,再不行还可以WINDOWS PHONE,还是微软的那套东西,上手起来也不困难
    movingcity
        51
    movingcity  
       2014-03-06 16:29:07 +08:00   1
    干了10多年的Windows开发。去年开始项目需要用WPF做客户端,MVVM设计模式,PRISM+MEF框架。这些对于当时一直在干WinForm的我来说都是新的。到今天我刚能玩转了WPF了,丫的又出Runtime了。。。
    微软的人写过一套《Windows User Experience Interaction Guidelines》,内容是如何提高用户体验,就是教你如何设计让人喜欢的应用程序,好几百页啊。。。不过看完之后,真的懂了,真的。(iOS的话也有苹果的《iOS Human Interface Guidelines》)
    wb14123
        52
    wb14123  
       2014-03-07 08:37:23 +08:00   1
    我觉得不管是Web还是客户端,都是将数据表现出来,都是相通的。web一些看似很超前的理念其实在一些客户端开发中也早就有了,只不过web形成了一套标准而已。

    Windows客户端开发的主要问题是都是由微软一家主导。如果谁有新的想法,不能很快让大家投入使用。我觉得如果学习开源和跨平台的库比如QT,还是很有发展前途的。
    hellogmh
        53
    hellogmh  
       2015-07-22 09:46:04 +08:00
    @txx 还招人不?C++上手学IOS是很快,就差机会啊
    hellogmh
        54
    hellogmh  
       2015-07-22 09:46:37 +08:00
    @harrymoo 大公司都需要专精的人。会的多而不精,大公司不喜欢。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5417 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 35ms UTC 01:22 PVG 09:22 LAX 18:22 JFK 21:22
    Do have faith in what you're doing.
    ubao 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