geteilt von: https://lemmit.online/post/3018791
This is an automated archive made by the Lemmit Bot.
The original was posted on /r/ProgrammerHumor by /u/polytopelover on 2024-05-26 21:23:20+00:00.
- alexdeathway ( @alexdeathway@programming.dev ) 115•4 months ago
First one are method name, second one are status name.
def open_file_dialog(self): self.dialog_file_open = True pass
Yoda level preference war.
- crispy_kilt ( @crispy_kilt@feddit.de ) 5•4 months ago
Lol mutable state
- rekabis ( @rekabis@lemmy.ca ) 49•4 months ago
There is a reason why little endian is preferred in virtually 100% of cases: sorting. Mentally or lexicographically, having the most important piece of information first will allow the correct item be found the fastest, or allow it to be discounted/ignored the quickest.
- deadbeef79000 ( @deadbeef79000@lemmy.nz ) 12•4 months ago
That’s actually filtering not sorting.
That being said, it’s more valuable (to me) to be able to find all my things for a topic quickly rather than type.
Foo_dialog
Foo_action
Foo_map
Bar_dialog
Bar_action
Bar_map
Is superior IMHO.
- rekabis ( @rekabis@lemmy.ca ) 6•4 months ago
If you are looking for
Bar
, it is highly likely that you are already looking specifically for a particular functionality - say, theaction
- forBar
. As such, it is irrelevant which method you use, both will get you to the function you need.Conversely, while it is likely you will want to look up all items that implement a particular functionality, it is much less likely you are going to ever need a complete listing of all functionality that an item employs; you will be targeting only one functionality for that item and will have that one functionality as the primary and concrete focus. Ergo, functionality comes first, followed by what item has that functionality.
- deadbeef79000 ( @deadbeef79000@lemmy.nz ) 2•4 months ago
We probably have slightly different work processes.
I’m more likely to be making “foo” functionally complete and then making “bar” complete than I am to be making all my dialogs functional then all my tabs/whatever.
This comes from TDD where I’m making a test pass for “foo”, once done, I’ll do the same for “bar”.
Though it’s even more likely these are different files entirely, rendering the arguments moot.
- redfellow ( @red@sopuli.xyz ) 3•4 months ago
I put all those in different files
compont/functions/foo.ext etc.
- deadbeef79000 ( @deadbeef79000@lemmy.nz ) 2•4 months ago
Depends on the language’s constraints, but yes: more smaller files please!
- morrowind ( @morrowind@lemmy.ml ) 43•4 months ago
Where’s
file_dialogue_open
- verstra ( @verstra@programming.dev ) 19•4 months ago
This is the real big-endian way. So your things line-up when you have all of these:
file_dialogue_open file_dialogue_close file_dropdown_open file_rename directory_remove
If I were designing a natural language, I’d put adjectives after the nouns, so you start with the important things first:
car big red
instead of
big red car
- janAkali ( @janAkali@lemmy.one ) English8•4 months ago
To be fair, it’s also missing
open_dialog_file
,dialog_open_file
and most cruciallyfile_open_dialog
- redcalcium ( @redcalcium@lemmy.institute ) 40•4 months ago
I’m truly torn with this. The first one seems sensible (action -> target) and easier to read and reason about (especially with long names), while the other one looks more organized, naturally sortable and works great with any autocompletion system.
- And009 ( @And009@lemmynsfw.com ) English14•4 months ago
Not a programmer, but I’d prefer right naming convention because sorting
- Lightfire228 ( @Lightfire228@pawb.social ) 11•4 months ago
I am a programmer, and i also like the naming scheme on the right
Especially for things like filenames
- bitwolf ( @bitwolf@lemmy.one ) 7•4 months ago
Also a programmer and think method names would be conducive using little endian.
TopicGet() TopicCreate() TopicDelete()
Writing this I realize we do this implicitly in some instances.
http.Get() -> httpGet() http.Post() -> httpPost()
- kunaltyagi ( @kunaltyagi@programming.dev ) 10•4 months ago
We need a new framework, one that allows universal lookup, and makes life easier
x = _.dialog.file.open y = _.open.file.dialog z = _.file.open.dialog a = _.file.dialog.open
Once done, the formatter simply changes everything to
_.open.file.dialog
Let’s get this done JS peeps
\s
- evatronic ( @evatronic@lemm.ee ) English27•4 months ago
I do one, the other senior dev does the other. We fight about it in pull requests.
- livingcoder ( @livingcoder@programming.dev ) 25•4 months ago
Your team needs to have a coding standards meeting where you can describe the pros and cons of each approach. You guys shouldn’t be wasting time during PR reviews on the same argument. When that happens to me, it just feels like such a waste of time.
- evatronic ( @evatronic@lemm.ee ) English14•4 months ago
Preachin to the choir, friend. I’d get worked up about it but I’m paid the same regardless of how upset I get.
- onlinepersona ( @onlinepersona@programming.dev ) English14•4 months ago
I used to like the
action
followed bydirect object
format, until some time ago when trying to find methods or variables related to a specific object. If the action comes first, scanning for the object without an IDE means first reading unnecessary information about the action. That convinced me to opt for$object-$action
in situations where it makes sense.For example in CSS, I often scan for the element, then the action, so
$element-$action
makes more sense. BEM kinda follows this. When dealing with the DOM in JS, that makes sense toobutton.fileDialogOpen()
,button.fileDialogSend()
, … makes more sense when searching.Of course one has to use it sensibly and where necessary. If you are writing a code that focuses more on actions than objects, putting the action first makes sense.
A similar thing is definition order.
def main(args): result = do_something(args.input) processed = process_result(result) transformed = transform_object(processed) return transformed.field def do_something(some_input): ... def process_result(result): ... def transform_object(obj): ...
I find this much easier to follow than if
main
were defined last, becausemain
is obviously the most important method and everything else is used by it. A flattened dependency tree is how these definitions make sense to me or how I would read them as newbie to a codebase.I agree with you especially on the definition order of functions. I, too, define
main()
first.
- crispy_kilt ( @crispy_kilt@feddit.de ) 14•4 months ago
First of all, it’s spelled dialogue
- Sotuanduso ( @Sotuanduso@lemm.ee ) English10•4 months ago
Two wars can exist simultaneously.
- katy ✨ ( @cupcakezealot@lemmy.blahaj.zone ) 13•4 months ago
the people who chose the first one…who hurt you?
- MechanicalJester ( @MechanicalJester@lemm.ee ) 9•4 months ago
No one, it just makes sense.
You must be one of those “Throw your mother downstairs, the box of tissues” types.
Yoda sounded normal to you I bet.
- LoudWaterHombre ( @loudWaterEnjoyer@lemmy.dbzer0.com ) 8•4 months ago
It makes sense until you write 30 methods to manipulate the data layer.
- Lifter ( @Lifter@discuss.tchncs.de ) 1•4 months ago
Fuzzy search solves this pretty good
- Swedneck ( @Swedneck@discuss.tchncs.de ) 1•4 months ago
reverse polish notation time
- lightnsfw ( @lightnsfw@reddthat.com ) 2•4 months ago
Powershell
- jarfil ( @jarfil@beehaw.org ) 12•4 months ago
Both:
dialog_error = Dialog_plain.create_modal(error_text)
Variable and class names go from more general to more particular, functions begin with a verb.
Global functions are either “main”, or start with one of “debug”, “todo”, or “shit”.
- roon ( @roon@lemmy.ml ) English12•4 months ago
Powershell has a lint warning for functions that don’t follow Verb-Noun format, and verbs here are a list of approved verbs lol
- jjjalljs ( @jjjalljs@ttrpg.network ) 12•4 months ago
I worked at a place where all the DB column names were like
id_user
,id_project
. I hated it.- Terrasque ( @theterrasque@infosec.pub ) 1•4 months ago
I worked on one where the columns were datanasename_tablename_column
They said it makes things “less confusing”
- Fish [Indiana] ( @Fish@midwest.social ) English11•4 months ago
Variety is the spice of life.
- Todd Bonzalez ( @todd_bonzalez@lemm.ee ) 11•4 months ago
Mmmmmmmm… Lexicographical Endianness.
- Matty_r ( @Matty_r@programming.dev ) 8•4 months ago
The object/class/thing would normally be its own class file, the action would be a method/function of said class.
Ie:
fileDialog.open()
fileDialog = Class (Dialog), Subclass (FileDialog)
- locuester ( @locuester@lemmy.zip ) English6•4 months ago
It’s referring to variable names. For example, you have a variable named fileDialog. I would prefer to have that named dialogFile.
- linuxgator ( @user1234@lemmynsfw.com ) English5•4 months ago
dialog_file_open_dialog I prefer big.LITTLE cpus