其他 对于简单脚本,感觉 perl 写得舒心一点

crella95 · 2021年09月27日 · 最后由 ThxFly 回复于 2021年11月01日 · 695 次阅读

编程水平仅限于减小重复操作的工作量,回到 perl 这种主要面向过程的思维真好

https://gitee.com/crella/open/blob/master/goods.pl ,这是某个论坛的长回复的整理保存,没用到一个 Class,获取网页用的是 curl.exe。

之前那个四则运算计算器是我想歪了。主要是常见的 java python 都经常推荐面向对象设计,有时候我只是想摆脱这种思维

不美丽。。。读起来心累。。。

pynix 回复

我看过了,大概也是无压力转 C 语言,如果 C 语言也算读起来心累,那只能这样

我强调的是我没想到不定义一个类也能写出来

ruby 最 happy 除了嵌套的 end 太多容易串行


module Web
  module Controllers
    module Home
      class Index
        include Web::Action
        def call(params)
              print  “开始写代码"
              if    params  
             else   
              end 
        end
      end
    end
  end
end

就怕写完了过几天自己都看不懂

tablecell 回复

这个代码写的。。。就好像专门和老师对着干似的 😀

.net core6 也可以不要类了

就是那个比 php 还恶心的 perl?

9 楼 已删除
watsy0007 回复

脑子不够用,理解 golang 和 ruby 已是极限,学习 perl6 让我直接跳楼

Ruby 自带 eval() 函数:

12 Rby> $ufm = '2*(3+5.2/(1-6.5))';
13 Rby> eval $ufm
=> 4.109090909090909

sevk 回复

三 P 和 ruby 都有 eval 函数吧,但是 rval 函数很费时间的

不用面向对象来写爬虫

tablecell 回复

可以这样写,就是 rubocop 的风格走偏了 (https://rubystyle.guide/#namespace-definition),没有因地制宜. 实际业务编程中,我们根本就不会去定义 Web、Controllers、Home 范围内的常量。

class Web::Controllers::Home::Index
  include Web::Action
  def call(params)
      print  "开始写代码"
      if  params  
      else   
      end 
   end
end

同理 Rails 的控制层嵌套也应写成这样,没有任何损失. 因为根本就不会去定义 Api, V1 级别的控制器常量,所以没有任何影响. 目前我就要求自己项目的人这样写,层级越少,越不容易达到每行 80 个字符的限制。

class Api::V1::UsersController < Api::V1::BaseController
   ......
end
crella95 关闭了讨论。 10月16日 13:56
需要 登录 后方可回复, 如果你还没有账号请 注册新账号